@navios/core 1.0.0-alpha.2 → 1.0.0-alpha.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/CHANGELOG.md +36 -0
- package/lib/{index-BJjk2X1S.d.mts → index-BISYCYEG.d.mts} +435 -180
- package/lib/index-BISYCYEG.d.mts.map +1 -0
- package/lib/{index-DZ6NU03y.d.cts → index-CP80H6Dh.d.cts} +435 -180
- package/lib/index-CP80H6Dh.d.cts.map +1 -0
- package/lib/index.cjs +3 -2
- package/lib/index.d.cts +2 -2
- package/lib/index.d.mts +2 -2
- package/lib/index.mjs +2 -2
- package/lib/legacy-compat/index.cjs +38 -124
- package/lib/legacy-compat/index.cjs.map +1 -1
- package/lib/legacy-compat/index.d.cts +4 -60
- package/lib/legacy-compat/index.d.cts.map +1 -1
- package/lib/legacy-compat/index.d.mts +4 -60
- package/lib/legacy-compat/index.d.mts.map +1 -1
- package/lib/legacy-compat/index.mjs +12 -118
- package/lib/legacy-compat/index.mjs.map +1 -1
- package/lib/{src-C46ePe3d.cjs → src-CC5lmk_Q.cjs} +167 -2
- package/lib/src-CC5lmk_Q.cjs.map +1 -0
- package/lib/{src-K2k0riYJ.mjs → src-j1cBuAgy.mjs} +162 -3
- package/lib/src-j1cBuAgy.mjs.map +1 -0
- package/lib/testing/index.cjs +2 -2
- package/lib/testing/index.d.cts +1 -1
- package/lib/testing/index.d.mts +1 -1
- package/lib/testing/index.mjs +1 -1
- package/lib/{use-guards.decorator-B6tghdxM.cjs → use-guards.decorator-DtCGXcWZ.cjs} +2 -2
- package/lib/{use-guards.decorator-B6tghdxM.cjs.map → use-guards.decorator-DtCGXcWZ.cjs.map} +1 -1
- package/package.json +2 -2
- package/src/__tests__/attribute.factory.spec.mts +300 -0
- package/src/__tests__/guard-runner.service.spec.mts +399 -0
- package/src/__tests__/logger.service.spec.mts +147 -0
- package/src/__tests__/responders.spec.mts +6 -5
- package/src/interfaces/abstract-http-handler-adapter.interface.mts +86 -2
- package/src/legacy-compat/attribute.factory.mts +2 -2
- package/src/legacy-compat/decorators/controller.decorator.mts +1 -1
- package/src/legacy-compat/decorators/endpoint.decorator.mts +1 -1
- package/src/legacy-compat/decorators/header.decorator.mts +2 -1
- package/src/legacy-compat/decorators/http-code.decorator.mts +2 -1
- package/src/legacy-compat/decorators/index.mts +2 -2
- package/src/legacy-compat/decorators/module.decorator.mts +1 -1
- package/src/legacy-compat/decorators/multipart.decorator.mts +1 -1
- package/src/legacy-compat/decorators/stream.decorator.mts +1 -1
- package/src/legacy-compat/decorators/use-guards.decorator.mts +1 -1
- package/src/legacy-compat/index.mts +10 -5
- package/src/services/abstract-handler-adapter.service.mts +366 -0
- package/src/services/index.mts +1 -0
- package/lib/index-BJjk2X1S.d.mts.map +0 -1
- package/lib/index-DZ6NU03y.d.cts.map +0 -1
- package/lib/src-C46ePe3d.cjs.map +0 -1
- package/lib/src-K2k0riYJ.mjs.map +0 -1
- package/src/legacy-compat/context-compat.mts +0 -95
- package/src/legacy-compat/decorators/factory.decorator.mts +0 -37
- package/src/legacy-compat/decorators/injectable.decorator.mts +0 -41
|
@@ -3,10 +3,10 @@ import type {
|
|
|
3
3
|
EndpointOptions,
|
|
4
4
|
RequestArgs,
|
|
5
5
|
} from '@navios/builder'
|
|
6
|
+
import { createMethodContext } from '@navios/di/legacy-compat'
|
|
6
7
|
import type { z } from 'zod/v4'
|
|
7
8
|
|
|
8
9
|
import { Endpoint as OriginalEndpoint } from '../../decorators/endpoint.decorator.mjs'
|
|
9
|
-
import { createMethodContext } from '../context-compat.mjs'
|
|
10
10
|
|
|
11
11
|
/**
|
|
12
12
|
* Type helper to constrain a PropertyDescriptor's value to match an endpoint signature.
|
|
@@ -1,7 +1,8 @@
|
|
|
1
|
+
import { createMethodContext } from '@navios/di/legacy-compat'
|
|
2
|
+
|
|
1
3
|
import type { HttpHeader } from '../../interfaces/index.mjs'
|
|
2
4
|
|
|
3
5
|
import { Header as OriginalHeader } from '../../decorators/header.decorator.mjs'
|
|
4
|
-
import { createMethodContext } from '../context-compat.mjs'
|
|
5
6
|
|
|
6
7
|
/**
|
|
7
8
|
* Legacy-compatible Header decorator.
|
|
@@ -6,6 +6,6 @@ export * from './header.decorator.mjs'
|
|
|
6
6
|
export * from './http-code.decorator.mjs'
|
|
7
7
|
export * from './multipart.decorator.mjs'
|
|
8
8
|
export * from './stream.decorator.mjs'
|
|
9
|
-
export * from './injectable.decorator.mjs'
|
|
10
|
-
export * from './factory.decorator.mjs'
|
|
11
9
|
|
|
10
|
+
// Re-export DI decorators from @navios/di/legacy-compat
|
|
11
|
+
export { Injectable, Factory, type InjectableOptions, type FactoryOptions } from '@navios/di/legacy-compat'
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import type { ClassType } from '@navios/di'
|
|
2
|
+
import { createClassContext } from '@navios/di/legacy-compat'
|
|
2
3
|
|
|
3
4
|
import { Module as OriginalModule, type ModuleOptions } from '../../decorators/module.decorator.mjs'
|
|
4
|
-
import { createClassContext } from '../context-compat.mjs'
|
|
5
5
|
|
|
6
6
|
/**
|
|
7
7
|
* Legacy-compatible Module decorator.
|
|
@@ -3,10 +3,10 @@ import type {
|
|
|
3
3
|
EndpointOptions,
|
|
4
4
|
RequestArgs,
|
|
5
5
|
} from '@navios/builder'
|
|
6
|
+
import { createMethodContext } from '@navios/di/legacy-compat'
|
|
6
7
|
import type { z } from 'zod/v4'
|
|
7
8
|
|
|
8
9
|
import { Multipart as OriginalMultipart } from '../../decorators/multipart.decorator.mjs'
|
|
9
|
-
import { createMethodContext } from '../context-compat.mjs'
|
|
10
10
|
|
|
11
11
|
/**
|
|
12
12
|
* Type helper to constrain a PropertyDescriptor's value to match a multipart endpoint signature.
|
|
@@ -3,9 +3,9 @@ import type {
|
|
|
3
3
|
RequestArgs,
|
|
4
4
|
StreamHandler,
|
|
5
5
|
} from '@navios/builder'
|
|
6
|
+
import { createMethodContext } from '@navios/di/legacy-compat'
|
|
6
7
|
|
|
7
8
|
import { Stream as OriginalStream } from '../../decorators/stream.decorator.mjs'
|
|
8
|
-
import { createMethodContext } from '../context-compat.mjs'
|
|
9
9
|
|
|
10
10
|
/**
|
|
11
11
|
* Type helper to constrain a PropertyDescriptor's value to match a stream endpoint signature.
|
|
@@ -3,11 +3,11 @@ import type {
|
|
|
3
3
|
ClassTypeWithInstance,
|
|
4
4
|
InjectionToken,
|
|
5
5
|
} from '@navios/di'
|
|
6
|
+
import { createClassContext, createMethodContext } from '@navios/di/legacy-compat'
|
|
6
7
|
|
|
7
8
|
import type { CanActivate } from '../../interfaces/index.mjs'
|
|
8
9
|
|
|
9
10
|
import { UseGuards as OriginalUseGuards } from '../../decorators/use-guards.decorator.mjs'
|
|
10
|
-
import { createClassContext, createMethodContext } from '../context-compat.mjs'
|
|
11
11
|
|
|
12
12
|
/**
|
|
13
13
|
* Legacy-compatible UseGuards decorator.
|
|
@@ -26,7 +26,7 @@ export type {
|
|
|
26
26
|
StreamParams,
|
|
27
27
|
} from '../decorators/index.mjs'
|
|
28
28
|
|
|
29
|
-
// Export legacy-compatible decorators
|
|
29
|
+
// Export legacy-compatible decorators (core-specific)
|
|
30
30
|
export {
|
|
31
31
|
Module,
|
|
32
32
|
Controller,
|
|
@@ -36,9 +36,17 @@ export {
|
|
|
36
36
|
HttpCode,
|
|
37
37
|
Multipart,
|
|
38
38
|
Stream,
|
|
39
|
+
} from './decorators/index.mjs'
|
|
40
|
+
|
|
41
|
+
// Re-export DI decorators and context utilities from @navios/di/legacy-compat
|
|
42
|
+
export {
|
|
39
43
|
Injectable,
|
|
40
44
|
Factory,
|
|
41
|
-
|
|
45
|
+
createClassContext,
|
|
46
|
+
createMethodContext,
|
|
47
|
+
type InjectableOptions,
|
|
48
|
+
type FactoryOptions,
|
|
49
|
+
} from '@navios/di/legacy-compat'
|
|
42
50
|
|
|
43
51
|
// Export legacy-compatible AttributeFactory
|
|
44
52
|
export {
|
|
@@ -47,6 +55,3 @@ export {
|
|
|
47
55
|
type LegacyClassAttribute,
|
|
48
56
|
type LegacyClassSchemaAttribute,
|
|
49
57
|
} from './attribute.factory.mjs'
|
|
50
|
-
|
|
51
|
-
// Export context compatibility utilities
|
|
52
|
-
export * from './context-compat.mjs'
|
|
@@ -0,0 +1,366 @@
|
|
|
1
|
+
import type { ClassType, ScopedContainer } from '@navios/di'
|
|
2
|
+
import type { BaseEndpointOptions } from '@navios/builder'
|
|
3
|
+
|
|
4
|
+
import { inject, optional } from '@navios/di'
|
|
5
|
+
|
|
6
|
+
import type { HandlerMetadata } from '../metadata/index.mjs'
|
|
7
|
+
import type {
|
|
8
|
+
ArgumentGetterFn,
|
|
9
|
+
FormatArgumentsFn as InterfaceFormatArgumentsFn,
|
|
10
|
+
HttpHeader,
|
|
11
|
+
} from '../interfaces/index.mjs'
|
|
12
|
+
import type { NaviosApplicationOptions } from '../navios.application.mjs'
|
|
13
|
+
|
|
14
|
+
import { NaviosOptionsToken } from '../tokens/index.mjs'
|
|
15
|
+
import {
|
|
16
|
+
InstanceResolverService,
|
|
17
|
+
type InstanceResolution,
|
|
18
|
+
} from './instance-resolver.service.mjs'
|
|
19
|
+
|
|
20
|
+
// ============================================================================
|
|
21
|
+
// Types
|
|
22
|
+
// ============================================================================
|
|
23
|
+
|
|
24
|
+
/**
|
|
25
|
+
* Function type for argument getters that extract data from requests.
|
|
26
|
+
* Re-exported from interface for convenience in adapter implementations.
|
|
27
|
+
*/
|
|
28
|
+
export type ArgumentGetter<TRequest> = ArgumentGetterFn<TRequest>
|
|
29
|
+
|
|
30
|
+
/**
|
|
31
|
+
* Internal alias for FormatArgumentsFn from interface.
|
|
32
|
+
* Not re-exported to avoid duplicate exports - use FormatArgumentsFn from interfaces instead.
|
|
33
|
+
*/
|
|
34
|
+
type FormatArgumentsFn<TRequest> = InterfaceFormatArgumentsFn<TRequest>
|
|
35
|
+
|
|
36
|
+
/**
|
|
37
|
+
* Static handler - can be called without a scoped container.
|
|
38
|
+
*/
|
|
39
|
+
export type AbstractStaticHandler<TRequest, TReply = void> = {
|
|
40
|
+
isStatic: true
|
|
41
|
+
handler: (request: TRequest, reply: TReply) => Promise<any>
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
/**
|
|
45
|
+
* Dynamic handler - requires a scoped container for resolution.
|
|
46
|
+
*/
|
|
47
|
+
export type AbstractDynamicHandler<TRequest, TReply = void> = {
|
|
48
|
+
isStatic: false
|
|
49
|
+
handler: (
|
|
50
|
+
scoped: ScopedContainer,
|
|
51
|
+
request: TRequest,
|
|
52
|
+
reply: TReply,
|
|
53
|
+
) => Promise<any>
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
/**
|
|
57
|
+
* Handler result - either static or dynamic.
|
|
58
|
+
*/
|
|
59
|
+
export type AbstractHandlerResult<TRequest, TReply = void> =
|
|
60
|
+
| AbstractStaticHandler<TRequest, TReply>
|
|
61
|
+
| AbstractDynamicHandler<TRequest, TReply>
|
|
62
|
+
|
|
63
|
+
/**
|
|
64
|
+
* Context passed to handler creation methods.
|
|
65
|
+
*/
|
|
66
|
+
export interface HandlerContext<
|
|
67
|
+
TConfig extends BaseEndpointOptions = BaseEndpointOptions,
|
|
68
|
+
> {
|
|
69
|
+
methodName: string
|
|
70
|
+
statusCode: number
|
|
71
|
+
headers: Partial<Record<HttpHeader, number | string | string[] | undefined>>
|
|
72
|
+
handlerMetadata: HandlerMetadata<TConfig>
|
|
73
|
+
hasArguments: boolean
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
// ============================================================================
|
|
77
|
+
// Default Options
|
|
78
|
+
// ============================================================================
|
|
79
|
+
|
|
80
|
+
const defaultOptions: NaviosApplicationOptions = {
|
|
81
|
+
adapter: [],
|
|
82
|
+
validateResponses: true,
|
|
83
|
+
enableRequestId: false,
|
|
84
|
+
}
|
|
85
|
+
|
|
86
|
+
// ============================================================================
|
|
87
|
+
// Abstract Base Class
|
|
88
|
+
// ============================================================================
|
|
89
|
+
|
|
90
|
+
/**
|
|
91
|
+
* Abstract base class for HTTP handler adapter services.
|
|
92
|
+
*
|
|
93
|
+
* Provides shared logic for:
|
|
94
|
+
* - Controller resolution (singleton vs request-scoped)
|
|
95
|
+
* - Argument formatting (sync/async detection)
|
|
96
|
+
* - Handler generation with static/dynamic branching
|
|
97
|
+
* - Standardized error handling
|
|
98
|
+
*
|
|
99
|
+
* Adapters implement abstract methods for framework-specific behavior:
|
|
100
|
+
* - Request parsing (query, body, URL params)
|
|
101
|
+
* - Response creation
|
|
102
|
+
* - Schema provision
|
|
103
|
+
*
|
|
104
|
+
* Supports all adapter types:
|
|
105
|
+
* - Endpoint adapters: JSON request/response with validation
|
|
106
|
+
* - Stream adapters: Streaming responses with extra context
|
|
107
|
+
* - Multipart adapters: Form data parsing (extends endpoint)
|
|
108
|
+
*
|
|
109
|
+
* @typeParam TRequest - Framework request type (BunRequest, FastifyRequest)
|
|
110
|
+
* @typeParam TReply - Framework reply type (void for Bun, FastifyReply)
|
|
111
|
+
* @typeParam TConfig - Endpoint configuration type
|
|
112
|
+
*/
|
|
113
|
+
export abstract class AbstractHandlerAdapterService<
|
|
114
|
+
TRequest,
|
|
115
|
+
TReply = void,
|
|
116
|
+
TConfig extends BaseEndpointOptions = BaseEndpointOptions,
|
|
117
|
+
> {
|
|
118
|
+
protected instanceResolver = inject(InstanceResolverService)
|
|
119
|
+
protected options = optional(NaviosOptionsToken) ?? defaultOptions
|
|
120
|
+
|
|
121
|
+
// ==========================================================================
|
|
122
|
+
// Abstract Methods - Must be implemented by adapters
|
|
123
|
+
// ==========================================================================
|
|
124
|
+
|
|
125
|
+
/**
|
|
126
|
+
* Creates argument getter functions for extracting data from requests.
|
|
127
|
+
*
|
|
128
|
+
* Each getter populates a target object with data from the request
|
|
129
|
+
* (query params, body, URL params, etc.).
|
|
130
|
+
*
|
|
131
|
+
* Implementation varies by adapter type:
|
|
132
|
+
* - Endpoint: JSON body parsing with schema validation
|
|
133
|
+
* - Stream: Same as endpoint (body + query + url params)
|
|
134
|
+
* - Multipart: FormData/multipart stream parsing
|
|
135
|
+
*
|
|
136
|
+
* @param handlerMetadata - Handler metadata with schemas and configuration
|
|
137
|
+
* @returns Array of getter functions
|
|
138
|
+
*/
|
|
139
|
+
protected abstract createArgumentGetters(
|
|
140
|
+
handlerMetadata: HandlerMetadata<TConfig>,
|
|
141
|
+
): ArgumentGetter<TRequest>[]
|
|
142
|
+
|
|
143
|
+
/**
|
|
144
|
+
* Creates a static handler for singleton controllers.
|
|
145
|
+
*
|
|
146
|
+
* Implementation varies by adapter type:
|
|
147
|
+
* - Endpoint: Invoke method(args), serialize response as JSON
|
|
148
|
+
* - Stream: Invoke method(args, streamContext), return Response/use reply
|
|
149
|
+
*
|
|
150
|
+
* @param boundMethod - Pre-bound controller method
|
|
151
|
+
* @param formatArguments - Function to format request arguments
|
|
152
|
+
* @param context - Handler context with metadata
|
|
153
|
+
* @returns Static handler result
|
|
154
|
+
*/
|
|
155
|
+
protected abstract createStaticHandler(
|
|
156
|
+
boundMethod: (...args: any[]) => Promise<any>,
|
|
157
|
+
formatArguments: FormatArgumentsFn<TRequest>,
|
|
158
|
+
context: HandlerContext<TConfig>,
|
|
159
|
+
): AbstractStaticHandler<TRequest, TReply>
|
|
160
|
+
|
|
161
|
+
/**
|
|
162
|
+
* Creates a dynamic handler for request-scoped controllers.
|
|
163
|
+
*
|
|
164
|
+
* Implementation varies by adapter type:
|
|
165
|
+
* - Endpoint: Resolve controller per-request, invoke method(args)
|
|
166
|
+
* - Stream: Resolve controller per-request, invoke method(args, streamContext)
|
|
167
|
+
*
|
|
168
|
+
* @param resolution - Instance resolution with resolve function
|
|
169
|
+
* @param formatArguments - Function to format request arguments
|
|
170
|
+
* @param context - Handler context with metadata
|
|
171
|
+
* @returns Dynamic handler result
|
|
172
|
+
*/
|
|
173
|
+
protected abstract createDynamicHandler(
|
|
174
|
+
resolution: InstanceResolution,
|
|
175
|
+
formatArguments: FormatArgumentsFn<TRequest>,
|
|
176
|
+
context: HandlerContext<TConfig>,
|
|
177
|
+
): AbstractDynamicHandler<TRequest, TReply>
|
|
178
|
+
|
|
179
|
+
// ==========================================================================
|
|
180
|
+
// Public Interface Methods
|
|
181
|
+
// ==========================================================================
|
|
182
|
+
|
|
183
|
+
/**
|
|
184
|
+
* Prepares argument getters for parsing request data.
|
|
185
|
+
*
|
|
186
|
+
* Public alias for createArgumentGetters to satisfy interface contracts.
|
|
187
|
+
* Subclasses should override createArgumentGetters instead.
|
|
188
|
+
*
|
|
189
|
+
* @param handlerMetadata - Handler metadata with schemas and configuration
|
|
190
|
+
* @returns Array of getter functions
|
|
191
|
+
*/
|
|
192
|
+
prepareArguments(
|
|
193
|
+
handlerMetadata: HandlerMetadata<TConfig>,
|
|
194
|
+
): ArgumentGetter<TRequest>[] {
|
|
195
|
+
return this.createArgumentGetters(handlerMetadata)
|
|
196
|
+
}
|
|
197
|
+
|
|
198
|
+
/**
|
|
199
|
+
* Checks if the handler has any validation schemas defined.
|
|
200
|
+
*
|
|
201
|
+
* Override in subclasses to add additional schema checks
|
|
202
|
+
* (e.g., response schema validation for endpoint adapters).
|
|
203
|
+
*
|
|
204
|
+
* @param handlerMetadata - Handler metadata with configuration
|
|
205
|
+
* @returns true if handler has schemas
|
|
206
|
+
*/
|
|
207
|
+
hasSchema(handlerMetadata: HandlerMetadata<TConfig>): boolean {
|
|
208
|
+
const config = handlerMetadata.config
|
|
209
|
+
return !!config.requestSchema || !!config.querySchema
|
|
210
|
+
}
|
|
211
|
+
|
|
212
|
+
/**
|
|
213
|
+
* Provides schema information for the framework's validation system.
|
|
214
|
+
*
|
|
215
|
+
* Override in subclasses for frameworks that support schema registration
|
|
216
|
+
* (e.g., Fastify). Default returns empty object (suitable for Bun).
|
|
217
|
+
*
|
|
218
|
+
* @param handlerMetadata - Handler metadata with configuration
|
|
219
|
+
* @returns Schema object for framework registration
|
|
220
|
+
*/
|
|
221
|
+
provideSchema(
|
|
222
|
+
_handlerMetadata: HandlerMetadata<TConfig>,
|
|
223
|
+
): Record<string, any> {
|
|
224
|
+
return {}
|
|
225
|
+
}
|
|
226
|
+
|
|
227
|
+
/**
|
|
228
|
+
* Creates a request handler function for the endpoint.
|
|
229
|
+
*
|
|
230
|
+
* This method orchestrates the entire handler creation:
|
|
231
|
+
* 1. Prepares argument getters for request parsing
|
|
232
|
+
* 2. Builds optimized formatArguments function (sync/async)
|
|
233
|
+
* 3. Resolves the controller (singleton vs request-scoped)
|
|
234
|
+
* 4. Creates appropriate handler (static or dynamic)
|
|
235
|
+
*
|
|
236
|
+
* @param controller - Controller class containing the handler method
|
|
237
|
+
* @param handlerMetadata - Handler metadata with configuration
|
|
238
|
+
* @returns Handler result (static or dynamic)
|
|
239
|
+
*/
|
|
240
|
+
async provideHandler(
|
|
241
|
+
controller: ClassType,
|
|
242
|
+
handlerMetadata: HandlerMetadata<TConfig>,
|
|
243
|
+
): Promise<AbstractHandlerResult<TRequest, TReply>> {
|
|
244
|
+
// Prepare argument getters
|
|
245
|
+
const getters = this.createArgumentGetters(handlerMetadata)
|
|
246
|
+
const formatArguments = this.buildFormatArguments(getters)
|
|
247
|
+
const hasArguments = getters.length > 0
|
|
248
|
+
|
|
249
|
+
// Build handler context
|
|
250
|
+
const context: HandlerContext<TConfig> = {
|
|
251
|
+
methodName: handlerMetadata.classMethod,
|
|
252
|
+
statusCode: handlerMetadata.successStatusCode,
|
|
253
|
+
headers: handlerMetadata.headers,
|
|
254
|
+
handlerMetadata,
|
|
255
|
+
hasArguments,
|
|
256
|
+
}
|
|
257
|
+
|
|
258
|
+
// Resolve controller with automatic scope detection
|
|
259
|
+
const resolution = await this.instanceResolver.resolve(controller)
|
|
260
|
+
|
|
261
|
+
// Create appropriate handler based on resolution
|
|
262
|
+
if (resolution.cached) {
|
|
263
|
+
const cachedController = resolution.instance as any
|
|
264
|
+
const boundMethod =
|
|
265
|
+
cachedController[context.methodName].bind(cachedController)
|
|
266
|
+
return this.createStaticHandler(boundMethod, formatArguments, context)
|
|
267
|
+
}
|
|
268
|
+
|
|
269
|
+
return this.createDynamicHandler(resolution, formatArguments, context)
|
|
270
|
+
}
|
|
271
|
+
|
|
272
|
+
// ==========================================================================
|
|
273
|
+
// Public Utilities
|
|
274
|
+
// ==========================================================================
|
|
275
|
+
|
|
276
|
+
/**
|
|
277
|
+
* Builds a formatArguments function from argument getters.
|
|
278
|
+
*
|
|
279
|
+
* Automatically detects sync vs async getters and optimizes accordingly:
|
|
280
|
+
* - If all getters are sync: returns sync function (no Promise overhead)
|
|
281
|
+
* - If any getter is async: returns async function with Promise.all
|
|
282
|
+
* - If no getters: returns frozen empty object (zero allocation)
|
|
283
|
+
*
|
|
284
|
+
* This method is public to allow composition-based adapters (like XML adapter)
|
|
285
|
+
* to reuse the optimized formatArguments logic without inheritance.
|
|
286
|
+
*
|
|
287
|
+
* @param getters - Array of argument getter functions
|
|
288
|
+
* @returns Function to format arguments from request
|
|
289
|
+
*/
|
|
290
|
+
buildFormatArguments(
|
|
291
|
+
getters: ArgumentGetter<TRequest>[],
|
|
292
|
+
): FormatArgumentsFn<TRequest> {
|
|
293
|
+
if (getters.length === 0) {
|
|
294
|
+
const emptyArgs = Object.freeze({})
|
|
295
|
+
return () => emptyArgs
|
|
296
|
+
}
|
|
297
|
+
|
|
298
|
+
// Detect if any getter is async at registration time
|
|
299
|
+
const hasAsyncGetters = getters.some(
|
|
300
|
+
(g) => g.constructor.name === 'AsyncFunction',
|
|
301
|
+
)
|
|
302
|
+
|
|
303
|
+
if (hasAsyncGetters) {
|
|
304
|
+
return async (request: TRequest) => {
|
|
305
|
+
const argument: Record<string, any> = {}
|
|
306
|
+
const promises: Promise<void>[] = []
|
|
307
|
+
for (const getter of getters) {
|
|
308
|
+
const res = getter(argument, request)
|
|
309
|
+
if (res instanceof Promise) {
|
|
310
|
+
promises.push(res)
|
|
311
|
+
}
|
|
312
|
+
}
|
|
313
|
+
await Promise.all(promises)
|
|
314
|
+
return argument
|
|
315
|
+
}
|
|
316
|
+
}
|
|
317
|
+
|
|
318
|
+
return (request: TRequest) => {
|
|
319
|
+
const argument: Record<string, any> = {}
|
|
320
|
+
for (const getter of getters) {
|
|
321
|
+
getter(argument, request)
|
|
322
|
+
}
|
|
323
|
+
return argument
|
|
324
|
+
}
|
|
325
|
+
}
|
|
326
|
+
|
|
327
|
+
// ==========================================================================
|
|
328
|
+
// Protected Utilities
|
|
329
|
+
// ==========================================================================
|
|
330
|
+
|
|
331
|
+
/**
|
|
332
|
+
* Checks if the URL pattern contains URL parameters.
|
|
333
|
+
*
|
|
334
|
+
* @param config - Endpoint configuration
|
|
335
|
+
* @returns true if URL contains '$' parameter markers
|
|
336
|
+
*/
|
|
337
|
+
protected hasUrlParams(config: TConfig): boolean {
|
|
338
|
+
return config.url.includes('$')
|
|
339
|
+
}
|
|
340
|
+
|
|
341
|
+
/**
|
|
342
|
+
* Wraps handler execution with standardized error handling.
|
|
343
|
+
*
|
|
344
|
+
* Re-throws HttpExceptions as-is for framework error handlers.
|
|
345
|
+
* Other errors are re-thrown for global error handling.
|
|
346
|
+
*
|
|
347
|
+
* @param fn - Handler function to wrap
|
|
348
|
+
* @returns Wrapped function with error handling
|
|
349
|
+
*/
|
|
350
|
+
protected wrapWithErrorHandling<T extends (...args: any[]) => Promise<any>>(
|
|
351
|
+
fn: T,
|
|
352
|
+
): T {
|
|
353
|
+
return (async (...args: any[]) => {
|
|
354
|
+
try {
|
|
355
|
+
return await fn(...args)
|
|
356
|
+
} catch (error) {
|
|
357
|
+
// Re-throw HttpExceptions as-is for framework error handlers
|
|
358
|
+
if (error && typeof error === 'object' && 'statusCode' in error) {
|
|
359
|
+
throw error
|
|
360
|
+
}
|
|
361
|
+
// Re-throw unexpected errors for global error handling
|
|
362
|
+
throw error
|
|
363
|
+
}
|
|
364
|
+
}) as T
|
|
365
|
+
}
|
|
366
|
+
}
|
package/src/services/index.mts
CHANGED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index-BJjk2X1S.d.mts","names":[],"sources":["../src/config/utils/helpers.mts","../src/config/types.mts","../src/config/config-service.interface.mts","../src/config/config.service.mts","../src/config/config.provider.mts","../src/decorators/controller.decorator.mts","../src/decorators/endpoint.decorator.mts","../src/metadata/handler.metadata.mts","../src/metadata/controller.metadata.mts","../src/metadata/module.metadata.mts","../src/metadata/navios-managed.metadata.mts","../src/interfaces/abstract-execution-context.inteface.mts","../src/logger/utils/cli-colors.util.mts","../src/logger/log-levels.mts","../src/logger/utils/filter-log-levelts.util.mts","../src/logger/utils/is-log-level.util.mts","../src/logger/utils/is-log-level-enabled.mts","../src/logger/utils/shared.utils.mts","../src/logger/logger-service.interface.mts","../src/logger/console-logger.service.mts","../src/logger/logger.service.mts","../src/logger/logger.tokens.mts","../src/interfaces/abstract-http-cors-options.interface.mts","../src/interfaces/abstract-http-listen-options.interface.mts","../src/interfaces/abstract-http-adapter.interface.mts","../src/interfaces/abstract-http-handler-adapter.interface.mts","../src/interfaces/can-activate.mts","../src/interfaces/http-header.mts","../src/interfaces/navios-module.mts","../src/services/module-loader.service.mts","../src/interfaces/plugin.interface.mts","../src/decorators/header.decorator.mts","../src/decorators/http-code.decorator.mts","../src/decorators/module.decorator.mts","../src/decorators/multipart.decorator.mts","../src/decorators/stream.decorator.mts","../src/decorators/use-guards.decorator.mts","../src/exceptions/http.exception.mts","../src/exceptions/bad-request.exception.mts","../src/exceptions/forbidden.exception.mts","../src/exceptions/internal-server-error.exception.mts","../src/exceptions/not-found.exception.mts","../src/exceptions/unauthorized.exception.mts","../src/exceptions/conflict.exception.mts","../src/responders/enums/framework-error.enum.mts","../src/responders/interfaces/problem-details.interface.mts","../src/responders/interfaces/error-response.interface.mts","../src/responders/interfaces/error-responder.interface.mts","../src/responders/services/error-response-producer.service.mts","../src/responders/services/forbidden-responder.service.mts","../src/responders/services/internal-server-error-responder.service.mts","../src/responders/services/not-found-responder.service.mts","../src/responders/services/validation-error-responder.service.mts","../src/responders/tokens/responder.tokens.mts","../src/services/instance-resolver.service.mts","../src/services/guard-runner.service.mts","../src/stores/request-id.store.mts","../src/tokens/endpoint-adapter.token.mts","../src/tokens/execution-context.token.mts","../src/tokens/http-adapter.token.mts","../src/tokens/multipart-adapter.token.mts","../src/navios.environment.mts","../src/navios.application.mts","../src/tokens/navios-options.token.mts","../src/tokens/reply.token.mts","../src/tokens/request.token.mts","../src/tokens/stream-adapter.token.mts","../src/tokens/xml-stream-adapter.token.mts","../src/attribute.factory.mts","../src/factories/endpoint-adapter.factory.mts","../src/factories/http-adapter.factory.mts","../src/factories/multipart-adapter.factory.mts","../src/factories/request.factory.mts","../src/factories/reply.factory.mts","../src/factories/stream-adapter.factory.mts","../src/factories/xml-stream-adapter.factory.mts","../src/navios.factory.mts"],"sourcesContent":[],"mappings":"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"}
|