exisjs 0.7.4 → 0.7.6
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/dist/cli/commands/build.d.ts +4 -2
- package/dist/cli/commands/build.d.ts.map +1 -1
- package/dist/cli/commands/build.js +80 -22
- package/dist/cli/commands/build.js.map +1 -1
- package/dist/cli/commands/dev.d.ts.map +1 -1
- package/dist/cli/commands/dev.js +229 -64
- package/dist/cli/commands/dev.js.map +1 -1
- package/dist/cli/commands/doctor.d.ts.map +1 -1
- package/dist/cli/commands/doctor.js +5 -2
- package/dist/cli/commands/doctor.js.map +1 -1
- package/dist/cli/commands/generate.d.ts +1 -0
- package/dist/cli/commands/generate.d.ts.map +1 -1
- package/dist/cli/commands/generate.js +25 -0
- package/dist/cli/commands/generate.js.map +1 -1
- package/dist/cli/commands/start.d.ts.map +1 -1
- package/dist/cli/commands/start.js +65 -15
- package/dist/cli/commands/start.js.map +1 -1
- package/dist/cli/index.js +20 -4
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/manifest.d.ts.map +1 -1
- package/dist/cli/manifest.js +118 -17
- package/dist/cli/manifest.js.map +1 -1
- package/dist/cli/resolve-aliases.d.ts +1 -1
- package/dist/cli/resolve-aliases.d.ts.map +1 -1
- package/dist/cli/resolve-aliases.js +30 -13
- package/dist/cli/resolve-aliases.js.map +1 -1
- package/dist/config/config.d.ts +3 -1
- package/dist/config/config.d.ts.map +1 -1
- package/dist/config/config.js.map +1 -1
- package/dist/config/env.d.ts.map +1 -1
- package/dist/config/env.js +8 -0
- package/dist/config/env.js.map +1 -1
- package/dist/config/types.d.ts +2 -0
- package/dist/config/types.d.ts.map +1 -1
- package/dist/decorators/constants.d.ts +2 -0
- package/dist/decorators/constants.d.ts.map +1 -1
- package/dist/decorators/middleware.d.ts +65 -2
- package/dist/decorators/middleware.d.ts.map +1 -1
- package/dist/decorators/middleware.js +148 -62
- package/dist/decorators/middleware.js.map +1 -1
- package/dist/decorators/params.d.ts +5 -0
- package/dist/decorators/params.d.ts.map +1 -1
- package/dist/decorators/params.js +11 -1
- package/dist/decorators/params.js.map +1 -1
- package/dist/decorators/response.d.ts.map +1 -1
- package/dist/decorators/response.js +32 -22
- package/dist/decorators/response.js.map +1 -1
- package/dist/di/container.d.ts.map +1 -1
- package/dist/di/container.js +6 -1
- package/dist/di/container.js.map +1 -1
- package/dist/docs/content/boundaries.mdx +33 -3
- package/dist/docs/content/cli/commands.mdx +1 -1
- package/dist/docs/content/config.mdx +26 -0
- package/dist/docs/content/controllers.mdx +127 -10
- package/dist/docs/content/decorators.mdx +22 -4
- package/dist/docs/content/errors.mdx +38 -2
- package/dist/docs/content/introduction.mdx +7 -7
- package/dist/docs/content/middleware.mdx +269 -6
- package/dist/docs/content/requests.mdx +217 -10
- package/dist/docs/content/responses.mdx +323 -34
- package/dist/docs/content/routing.mdx +46 -0
- package/dist/docs/content/security.mdx +17 -4
- package/dist/docs/content/structure.mdx +91 -12
- package/dist/docs/content/validation.mdx +226 -11
- package/dist/docs/reference/context.mdx +11 -0
- package/dist/docs/reference/decorators.mdx +14 -4
- package/dist/docs/reference/error.mdx +44 -0
- package/dist/docs/reference/logger.mdx +175 -43
- package/dist/docs/reference/middleware.mdx +31 -0
- package/dist/docs/reference/router.mdx +22 -0
- package/dist/docs/reference/validator.mdx +83 -23
- package/dist/error/errors.d.ts.map +1 -1
- package/dist/error/errors.js +95 -43
- package/dist/error/errors.js.map +1 -1
- package/dist/error/index.d.ts +1 -0
- package/dist/error/index.d.ts.map +1 -1
- package/dist/error/index.js +11 -1
- package/dist/error/index.js.map +1 -1
- package/dist/error/overlay.d.ts +42 -0
- package/dist/error/overlay.d.ts.map +1 -0
- package/dist/error/overlay.js +306 -0
- package/dist/error/overlay.js.map +1 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +22 -1
- package/dist/index.js.map +1 -1
- package/dist/lib/start-server.js +49 -7
- package/dist/lib/start-server.js.map +1 -1
- package/dist/logger/index.d.ts +1 -1
- package/dist/logger/index.d.ts.map +1 -1
- package/dist/logger/index.js +9 -1
- package/dist/logger/index.js.map +1 -1
- package/dist/middleware/guard.d.ts +2 -2
- package/dist/middleware/guard.d.ts.map +1 -1
- package/dist/middleware/guard.js.map +1 -1
- package/dist/middleware/ip-filter.d.ts +1 -0
- package/dist/middleware/ip-filter.d.ts.map +1 -1
- package/dist/middleware/ip-filter.js +2 -0
- package/dist/middleware/ip-filter.js.map +1 -1
- package/dist/middleware/middleware.d.ts +2 -2
- package/dist/middleware/middleware.d.ts.map +1 -1
- package/dist/middleware/middleware.js +20 -2
- package/dist/middleware/middleware.js.map +1 -1
- package/dist/middleware/rate-limit.d.ts.map +1 -1
- package/dist/middleware/rate-limit.js +9 -0
- package/dist/middleware/rate-limit.js.map +1 -1
- package/dist/middleware/security.d.ts +43 -1
- package/dist/middleware/security.d.ts.map +1 -1
- package/dist/middleware/security.js +101 -0
- package/dist/middleware/security.js.map +1 -1
- package/dist/response/index.d.ts +229 -6
- package/dist/response/index.d.ts.map +1 -1
- package/dist/response/index.js +272 -2
- package/dist/response/index.js.map +1 -1
- package/dist/router/boundary.d.ts +25 -5
- package/dist/router/boundary.d.ts.map +1 -1
- package/dist/router/boundary.js.map +1 -1
- package/dist/router/controller-registrar.d.ts.map +1 -1
- package/dist/router/controller-registrar.js +56 -1
- package/dist/router/controller-registrar.js.map +1 -1
- package/dist/router/index.d.ts +2 -2
- package/dist/router/index.d.ts.map +1 -1
- package/dist/router/index.js +2 -1
- package/dist/router/index.js.map +1 -1
- package/dist/router/route-builder.d.ts +70 -36
- package/dist/router/route-builder.d.ts.map +1 -1
- package/dist/router/route-builder.js +13 -15
- package/dist/router/route-builder.js.map +1 -1
- package/dist/router/route-scanner.d.ts +1 -0
- package/dist/router/route-scanner.d.ts.map +1 -1
- package/dist/router/route-scanner.js +217 -10
- package/dist/router/route-scanner.js.map +1 -1
- package/dist/router/router.d.ts.map +1 -1
- package/dist/router/router.js +35 -17
- package/dist/router/router.js.map +1 -1
- package/dist/router/types.d.ts +11 -1
- package/dist/router/types.d.ts.map +1 -1
- package/dist/sanitize/index.d.ts +6 -6
- package/dist/sanitize/index.d.ts.map +1 -1
- package/dist/sanitize/index.js +8 -8
- package/dist/sanitize/index.js.map +1 -1
- package/dist/server/app.d.ts +2 -0
- package/dist/server/app.d.ts.map +1 -1
- package/dist/server/app.js +14 -0
- package/dist/server/app.js.map +1 -1
- package/dist/server/bootstrapper.d.ts.map +1 -1
- package/dist/server/bootstrapper.js +91 -30
- package/dist/server/bootstrapper.js.map +1 -1
- package/dist/server/cluster.d.ts.map +1 -1
- package/dist/server/cluster.js +13 -2
- package/dist/server/cluster.js.map +1 -1
- package/dist/server/context.d.ts +8 -0
- package/dist/server/context.d.ts.map +1 -1
- package/dist/server/context.js +50 -6
- package/dist/server/context.js.map +1 -1
- package/dist/server/engines/node-engine.d.ts.map +1 -1
- package/dist/server/engines/node-engine.js +1 -0
- package/dist/server/engines/node-engine.js.map +1 -1
- package/dist/server/lifecycle.d.ts +22 -0
- package/dist/server/lifecycle.d.ts.map +1 -0
- package/dist/server/lifecycle.js +106 -0
- package/dist/server/lifecycle.js.map +1 -0
- package/dist/server/request-handler.d.ts +1 -0
- package/dist/server/request-handler.d.ts.map +1 -1
- package/dist/server/request-handler.js +42 -18
- package/dist/server/request-handler.js.map +1 -1
- package/dist/server/request.d.ts +6 -0
- package/dist/server/request.d.ts.map +1 -1
- package/dist/server/request.js +112 -33
- package/dist/server/request.js.map +1 -1
- package/dist/server/response.d.ts +13 -2
- package/dist/server/response.d.ts.map +1 -1
- package/dist/server/response.js +250 -10
- package/dist/server/response.js.map +1 -1
- package/dist/testing/index.d.ts.map +1 -1
- package/dist/testing/index.js +6 -1
- package/dist/testing/index.js.map +1 -1
- package/dist/testing/mocks.d.ts.map +1 -1
- package/dist/testing/mocks.js +15 -3
- package/dist/testing/mocks.js.map +1 -1
- package/dist/utils/logger.d.ts +8 -0
- package/dist/utils/logger.d.ts.map +1 -1
- package/dist/utils/logger.js +184 -1
- package/dist/utils/logger.js.map +1 -1
- package/dist/validator/tex-types.d.ts +2 -1
- package/dist/validator/tex-types.d.ts.map +1 -1
- package/dist/validator/tex-types.js +2 -1
- package/dist/validator/tex-types.js.map +1 -1
- package/dist/validator/tex.d.ts +38 -22
- package/dist/validator/tex.d.ts.map +1 -1
- package/dist/validator/tex.js +490 -40
- package/dist/validator/tex.js.map +1 -1
- package/package.json +10 -10
- package/dist/dev/error-overlay.d.ts +0 -3
- package/dist/dev/error-overlay.d.ts.map +0 -1
- package/dist/dev/error-overlay.js +0 -118
- package/dist/dev/error-overlay.js.map +0 -1
package/dist/response/index.d.ts
CHANGED
|
@@ -1,16 +1,239 @@
|
|
|
1
|
-
|
|
1
|
+
/**
|
|
2
|
+
* Standard successful response envelope.
|
|
3
|
+
*/
|
|
4
|
+
export type SuccessResponse<T = unknown, M = Record<string, unknown>> = {
|
|
2
5
|
success: true;
|
|
3
|
-
message?: string;
|
|
4
6
|
data: T;
|
|
7
|
+
message?: string;
|
|
8
|
+
meta?: M;
|
|
5
9
|
};
|
|
6
|
-
|
|
10
|
+
/**
|
|
11
|
+
* Standard error response envelope.
|
|
12
|
+
*/
|
|
13
|
+
export type ErrorResponse<E = unknown> = {
|
|
7
14
|
success: false;
|
|
8
15
|
error: {
|
|
9
16
|
message: string;
|
|
10
17
|
code?: string;
|
|
11
|
-
|
|
18
|
+
status?: number;
|
|
19
|
+
details?: E;
|
|
20
|
+
[key: string]: unknown;
|
|
12
21
|
};
|
|
13
22
|
};
|
|
14
|
-
|
|
15
|
-
|
|
23
|
+
/**
|
|
24
|
+
* Discriminated union of standard API response types.
|
|
25
|
+
*/
|
|
26
|
+
export type ApiResponse<T = unknown, E = unknown, M = Record<string, unknown>> = SuccessResponse<T, M> | ErrorResponse<E>;
|
|
27
|
+
/**
|
|
28
|
+
* Pagination metadata included in paginated responses.
|
|
29
|
+
*/
|
|
30
|
+
export interface PaginationMeta {
|
|
31
|
+
page: number;
|
|
32
|
+
limit: number;
|
|
33
|
+
total: number;
|
|
34
|
+
totalPages: number;
|
|
35
|
+
hasNextPage: boolean;
|
|
36
|
+
hasPrevPage: boolean;
|
|
37
|
+
hasNext: boolean;
|
|
38
|
+
hasPrev: boolean;
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* Standard paginated response envelope.
|
|
42
|
+
*/
|
|
43
|
+
export interface PaginatedResponse<T = unknown, M = Record<string, unknown>> {
|
|
44
|
+
success: true;
|
|
45
|
+
data: T[];
|
|
46
|
+
pagination: PaginationMeta;
|
|
47
|
+
message?: string;
|
|
48
|
+
meta?: M;
|
|
49
|
+
}
|
|
50
|
+
/**
|
|
51
|
+
* RFC 7807 / RFC 9457 Problem Details object specification for HTTP APIs.
|
|
52
|
+
*/
|
|
53
|
+
export interface ProblemDetails {
|
|
54
|
+
type?: string;
|
|
55
|
+
title: string;
|
|
56
|
+
status: number;
|
|
57
|
+
detail?: string;
|
|
58
|
+
instance?: string;
|
|
59
|
+
invalidParams?: {
|
|
60
|
+
name: string;
|
|
61
|
+
reason: string;
|
|
62
|
+
}[];
|
|
63
|
+
[key: string]: unknown;
|
|
64
|
+
}
|
|
65
|
+
/**
|
|
66
|
+
* HTTP response headers map.
|
|
67
|
+
*/
|
|
68
|
+
export type ResponseHeaders = Record<string, string | number | readonly string[]>;
|
|
69
|
+
/**
|
|
70
|
+
* Standard HTTP Status Code Constants.
|
|
71
|
+
*/
|
|
72
|
+
export declare const HttpStatus: {
|
|
73
|
+
readonly OK: 200;
|
|
74
|
+
readonly CREATED: 201;
|
|
75
|
+
readonly ACCEPTED: 202;
|
|
76
|
+
readonly NON_AUTHORITATIVE_INFORMATION: 203;
|
|
77
|
+
readonly NO_CONTENT: 204;
|
|
78
|
+
readonly RESET_CONTENT: 205;
|
|
79
|
+
readonly PARTIAL_CONTENT: 206;
|
|
80
|
+
readonly MULTIPLE_CHOICES: 300;
|
|
81
|
+
readonly MOVED_PERMANENTLY: 301;
|
|
82
|
+
readonly FOUND: 302;
|
|
83
|
+
readonly SEE_OTHER: 303;
|
|
84
|
+
readonly NOT_MODIFIED: 304;
|
|
85
|
+
readonly TEMPORARY_REDIRECT: 307;
|
|
86
|
+
readonly PERMANENT_REDIRECT: 308;
|
|
87
|
+
readonly BAD_REQUEST: 400;
|
|
88
|
+
readonly UNAUTHORIZED: 401;
|
|
89
|
+
readonly PAYMENT_REQUIRED: 402;
|
|
90
|
+
readonly FORBIDDEN: 403;
|
|
91
|
+
readonly NOT_FOUND: 404;
|
|
92
|
+
readonly METHOD_NOT_ALLOWED: 405;
|
|
93
|
+
readonly NOT_ACCEPTABLE: 406;
|
|
94
|
+
readonly PROXY_AUTHENTICATION_REQUIRED: 407;
|
|
95
|
+
readonly REQUEST_TIMEOUT: 408;
|
|
96
|
+
readonly CONFLICT: 409;
|
|
97
|
+
readonly GONE: 410;
|
|
98
|
+
readonly LENGTH_REQUIRED: 411;
|
|
99
|
+
readonly PRECONDITION_FAILED: 412;
|
|
100
|
+
readonly PAYLOAD_TOO_LARGE: 413;
|
|
101
|
+
readonly URI_TOO_LONG: 414;
|
|
102
|
+
readonly UNSUPPORTED_MEDIA_TYPE: 415;
|
|
103
|
+
readonly RANGE_NOT_SATISFIABLE: 416;
|
|
104
|
+
readonly EXPECTATION_FAILED: 417;
|
|
105
|
+
readonly IM_A_TEAPOT: 418;
|
|
106
|
+
readonly MISDIRECTED_REQUEST: 421;
|
|
107
|
+
readonly UNPROCESSABLE_ENTITY: 422;
|
|
108
|
+
readonly LOCKED: 423;
|
|
109
|
+
readonly FAILED_DEPENDENCY: 424;
|
|
110
|
+
readonly TOO_EARLY: 425;
|
|
111
|
+
readonly UPGRADE_REQUIRED: 426;
|
|
112
|
+
readonly PRECONDITION_REQUIRED: 428;
|
|
113
|
+
readonly TOO_MANY_REQUESTS: 429;
|
|
114
|
+
readonly REQUEST_HEADER_FIELDS_TOO_LARGE: 431;
|
|
115
|
+
readonly UNAVAILABLE_FOR_LEGAL_REASONS: 451;
|
|
116
|
+
readonly INTERNAL_SERVER_ERROR: 500;
|
|
117
|
+
readonly NOT_IMPLEMENTED: 501;
|
|
118
|
+
readonly BAD_GATEWAY: 502;
|
|
119
|
+
readonly SERVICE_UNAVAILABLE: 503;
|
|
120
|
+
readonly GATEWAY_TIMEOUT: 504;
|
|
121
|
+
readonly HTTP_VERSION_NOT_SUPPORTED: 505;
|
|
122
|
+
readonly VARIANT_ALSO_NEGOTIATES: 506;
|
|
123
|
+
readonly INSUFFICIENT_STORAGE: 507;
|
|
124
|
+
readonly LOOP_DETECTED: 508;
|
|
125
|
+
readonly NOT_EXTENDED: 510;
|
|
126
|
+
readonly NETWORK_AUTHENTICATION_REQUIRED: 511;
|
|
127
|
+
};
|
|
128
|
+
export type HttpStatusCode = (typeof HttpStatus)[keyof typeof HttpStatus];
|
|
129
|
+
/**
|
|
130
|
+
* Returns human-readable status text for a given HTTP status code.
|
|
131
|
+
*/
|
|
132
|
+
export declare function getStatusText(status: number): string;
|
|
133
|
+
/**
|
|
134
|
+
* Determines whether a status code represents a 2xx success.
|
|
135
|
+
*/
|
|
136
|
+
export declare function isSuccessStatus(status: number): boolean;
|
|
137
|
+
/**
|
|
138
|
+
* Determines whether a status code represents a 3xx redirection.
|
|
139
|
+
*/
|
|
140
|
+
export declare function isRedirectStatus(status: number): boolean;
|
|
141
|
+
/**
|
|
142
|
+
* Determines whether a status code represents a 4xx client error.
|
|
143
|
+
*/
|
|
144
|
+
export declare function isClientError(status: number): boolean;
|
|
145
|
+
/**
|
|
146
|
+
* Determines whether a status code represents a 5xx server error.
|
|
147
|
+
*/
|
|
148
|
+
export declare function isServerError(status: number): boolean;
|
|
149
|
+
/**
|
|
150
|
+
* Creates a standard 200 OK success response envelope.
|
|
151
|
+
*
|
|
152
|
+
* @example
|
|
153
|
+
* return success(user, 'User profile retrieved successfully')
|
|
154
|
+
*/
|
|
155
|
+
export declare function success<T, M = Record<string, unknown>>(data: T, message?: string, meta?: M): SuccessResponse<T, M>;
|
|
156
|
+
/**
|
|
157
|
+
* Creates a standard 201 Created response envelope.
|
|
158
|
+
*
|
|
159
|
+
* @example
|
|
160
|
+
* return created(newUser, 'User created successfully')
|
|
161
|
+
*/
|
|
162
|
+
export declare function created<T, M = Record<string, unknown>>(data: T, message?: string, meta?: M): SuccessResponse<T, M>;
|
|
163
|
+
/**
|
|
164
|
+
* Creates a standard 202 Accepted response envelope for async background processing.
|
|
165
|
+
*
|
|
166
|
+
* @example
|
|
167
|
+
* return accepted({ jobId: '123' }, 'Job queued for background execution')
|
|
168
|
+
*/
|
|
169
|
+
export declare function accepted<T = null, M = Record<string, unknown>>(data?: T, message?: string, meta?: M): SuccessResponse<T, M>;
|
|
170
|
+
/**
|
|
171
|
+
* Creates a standard 204 No Content response representation.
|
|
172
|
+
*
|
|
173
|
+
* @example
|
|
174
|
+
* return noContent()
|
|
175
|
+
*/
|
|
176
|
+
export declare function noContent(): {
|
|
177
|
+
success: true;
|
|
178
|
+
data: null;
|
|
179
|
+
};
|
|
180
|
+
/**
|
|
181
|
+
* Creates a standard error response envelope.
|
|
182
|
+
*
|
|
183
|
+
* @example
|
|
184
|
+
* return error('Invalid credentials', 'AUTH_INVALID_CREDENTIALS', undefined, 401)
|
|
185
|
+
*/
|
|
186
|
+
export declare function error<E = unknown>(message: string, code?: string, details?: E, status?: number): ErrorResponse<E>;
|
|
187
|
+
/**
|
|
188
|
+
* Creates a standardized RFC 7807 / RFC 9457 Problem Details object.
|
|
189
|
+
*
|
|
190
|
+
* @example
|
|
191
|
+
* return problem('Invalid Request Body', 422, 'The email field is invalid', {
|
|
192
|
+
* invalidParams: [{ name: 'email', reason: 'Must be a valid email format' }]
|
|
193
|
+
* })
|
|
194
|
+
*/
|
|
195
|
+
export declare function problem(title: string, status: number, detail?: string, options?: Partial<ProblemDetails>): ProblemDetails;
|
|
196
|
+
/**
|
|
197
|
+
* Creates a standardized paginated response envelope.
|
|
198
|
+
*
|
|
199
|
+
* @example
|
|
200
|
+
* return paginate(users, totalCount, { page: 1, limit: 20 })
|
|
201
|
+
*/
|
|
202
|
+
export declare function paginate<T, M = Record<string, unknown>>(data: T[], total: number, options?: {
|
|
203
|
+
page?: number;
|
|
204
|
+
limit?: number;
|
|
205
|
+
}, message?: string, meta?: M): PaginatedResponse<T, M>;
|
|
206
|
+
/**
|
|
207
|
+
* Calculates SQL/Database `skip` (offset) and `limit` from pagination query parameters.
|
|
208
|
+
*
|
|
209
|
+
* @example
|
|
210
|
+
* const { skip, limit, page } = getPaginationSkip(req.query)
|
|
211
|
+
* const users = await db.user.findMany({ skip, take: limit })
|
|
212
|
+
*/
|
|
213
|
+
export declare function getPaginationSkip(query?: {
|
|
214
|
+
page?: number;
|
|
215
|
+
limit?: number;
|
|
216
|
+
}): {
|
|
217
|
+
skip: number;
|
|
218
|
+
limit: number;
|
|
219
|
+
page: number;
|
|
220
|
+
};
|
|
221
|
+
/**
|
|
222
|
+
* Helper to build custom JSON payload structure with optional status code and headers hint.
|
|
223
|
+
*/
|
|
224
|
+
export declare function json<T>(data: T, status?: number, headers?: ResponseHeaders): {
|
|
225
|
+
data: T;
|
|
226
|
+
status: number;
|
|
227
|
+
headers: ResponseHeaders;
|
|
228
|
+
};
|
|
229
|
+
/**
|
|
230
|
+
* Helper to create a redirection descriptor.
|
|
231
|
+
*/
|
|
232
|
+
export declare function redirect(url: string, status?: number): {
|
|
233
|
+
redirect: string;
|
|
234
|
+
status: number;
|
|
235
|
+
};
|
|
236
|
+
export { ExisResponse } from '../server/response';
|
|
237
|
+
export { SSEStream, formatSSEEvent, type SSEOptions, type SSEMessage, } from '../server/sse';
|
|
238
|
+
export type { CookieOptions } from '../types';
|
|
16
239
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/response/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/response/index.ts"],"names":[],"mappings":"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"}
|
package/dist/response/index.js
CHANGED
|
@@ -1,19 +1,289 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
// ─── Standard Response Envelope Types ─────────────────────────────────────────
|
|
2
3
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
+
exports.formatSSEEvent = exports.SSEStream = exports.ExisResponse = exports.HttpStatus = void 0;
|
|
5
|
+
exports.getStatusText = getStatusText;
|
|
6
|
+
exports.isSuccessStatus = isSuccessStatus;
|
|
7
|
+
exports.isRedirectStatus = isRedirectStatus;
|
|
8
|
+
exports.isClientError = isClientError;
|
|
9
|
+
exports.isServerError = isServerError;
|
|
3
10
|
exports.success = success;
|
|
11
|
+
exports.created = created;
|
|
12
|
+
exports.accepted = accepted;
|
|
13
|
+
exports.noContent = noContent;
|
|
4
14
|
exports.error = error;
|
|
5
|
-
|
|
15
|
+
exports.problem = problem;
|
|
16
|
+
exports.paginate = paginate;
|
|
17
|
+
exports.getPaginationSkip = getPaginationSkip;
|
|
18
|
+
exports.json = json;
|
|
19
|
+
exports.redirect = redirect;
|
|
20
|
+
// ─── HTTP Status Codes ────────────────────────────────────────────────────────
|
|
21
|
+
/**
|
|
22
|
+
* Standard HTTP Status Code Constants.
|
|
23
|
+
*/
|
|
24
|
+
exports.HttpStatus = {
|
|
25
|
+
// 2xx Success
|
|
26
|
+
OK: 200,
|
|
27
|
+
CREATED: 201,
|
|
28
|
+
ACCEPTED: 202,
|
|
29
|
+
NON_AUTHORITATIVE_INFORMATION: 203,
|
|
30
|
+
NO_CONTENT: 204,
|
|
31
|
+
RESET_CONTENT: 205,
|
|
32
|
+
PARTIAL_CONTENT: 206,
|
|
33
|
+
// 3xx Redirection
|
|
34
|
+
MULTIPLE_CHOICES: 300,
|
|
35
|
+
MOVED_PERMANENTLY: 301,
|
|
36
|
+
FOUND: 302,
|
|
37
|
+
SEE_OTHER: 303,
|
|
38
|
+
NOT_MODIFIED: 304,
|
|
39
|
+
TEMPORARY_REDIRECT: 307,
|
|
40
|
+
PERMANENT_REDIRECT: 308,
|
|
41
|
+
// 4xx Client Errors
|
|
42
|
+
BAD_REQUEST: 400,
|
|
43
|
+
UNAUTHORIZED: 401,
|
|
44
|
+
PAYMENT_REQUIRED: 402,
|
|
45
|
+
FORBIDDEN: 403,
|
|
46
|
+
NOT_FOUND: 404,
|
|
47
|
+
METHOD_NOT_ALLOWED: 405,
|
|
48
|
+
NOT_ACCEPTABLE: 406,
|
|
49
|
+
PROXY_AUTHENTICATION_REQUIRED: 407,
|
|
50
|
+
REQUEST_TIMEOUT: 408,
|
|
51
|
+
CONFLICT: 409,
|
|
52
|
+
GONE: 410,
|
|
53
|
+
LENGTH_REQUIRED: 411,
|
|
54
|
+
PRECONDITION_FAILED: 412,
|
|
55
|
+
PAYLOAD_TOO_LARGE: 413,
|
|
56
|
+
URI_TOO_LONG: 414,
|
|
57
|
+
UNSUPPORTED_MEDIA_TYPE: 415,
|
|
58
|
+
RANGE_NOT_SATISFIABLE: 416,
|
|
59
|
+
EXPECTATION_FAILED: 417,
|
|
60
|
+
IM_A_TEAPOT: 418,
|
|
61
|
+
MISDIRECTED_REQUEST: 421,
|
|
62
|
+
UNPROCESSABLE_ENTITY: 422,
|
|
63
|
+
LOCKED: 423,
|
|
64
|
+
FAILED_DEPENDENCY: 424,
|
|
65
|
+
TOO_EARLY: 425,
|
|
66
|
+
UPGRADE_REQUIRED: 426,
|
|
67
|
+
PRECONDITION_REQUIRED: 428,
|
|
68
|
+
TOO_MANY_REQUESTS: 429,
|
|
69
|
+
REQUEST_HEADER_FIELDS_TOO_LARGE: 431,
|
|
70
|
+
UNAVAILABLE_FOR_LEGAL_REASONS: 451,
|
|
71
|
+
// 5xx Server Errors
|
|
72
|
+
INTERNAL_SERVER_ERROR: 500,
|
|
73
|
+
NOT_IMPLEMENTED: 501,
|
|
74
|
+
BAD_GATEWAY: 502,
|
|
75
|
+
SERVICE_UNAVAILABLE: 503,
|
|
76
|
+
GATEWAY_TIMEOUT: 504,
|
|
77
|
+
HTTP_VERSION_NOT_SUPPORTED: 505,
|
|
78
|
+
VARIANT_ALSO_NEGOTIATES: 506,
|
|
79
|
+
INSUFFICIENT_STORAGE: 507,
|
|
80
|
+
LOOP_DETECTED: 508,
|
|
81
|
+
NOT_EXTENDED: 510,
|
|
82
|
+
NETWORK_AUTHENTICATION_REQUIRED: 511,
|
|
83
|
+
};
|
|
84
|
+
const STATUS_TEXT_MAP = {
|
|
85
|
+
200: 'OK',
|
|
86
|
+
201: 'Created',
|
|
87
|
+
202: 'Accepted',
|
|
88
|
+
204: 'No Content',
|
|
89
|
+
301: 'Moved Permanently',
|
|
90
|
+
302: 'Found',
|
|
91
|
+
304: 'Not Modified',
|
|
92
|
+
307: 'Temporary Redirect',
|
|
93
|
+
308: 'Permanent Redirect',
|
|
94
|
+
400: 'Bad Request',
|
|
95
|
+
401: 'Unauthorized',
|
|
96
|
+
403: 'Forbidden',
|
|
97
|
+
404: 'Not Found',
|
|
98
|
+
405: 'Method Not Allowed',
|
|
99
|
+
406: 'Not Acceptable',
|
|
100
|
+
409: 'Conflict',
|
|
101
|
+
410: 'Gone',
|
|
102
|
+
413: 'Payload Too Large',
|
|
103
|
+
415: 'Unsupported Media Type',
|
|
104
|
+
422: 'Unprocessable Entity',
|
|
105
|
+
429: 'Too Many Requests',
|
|
106
|
+
500: 'Internal Server Error',
|
|
107
|
+
501: 'Not Implemented',
|
|
108
|
+
502: 'Bad Gateway',
|
|
109
|
+
503: 'Service Unavailable',
|
|
110
|
+
504: 'Gateway Timeout',
|
|
111
|
+
};
|
|
112
|
+
/**
|
|
113
|
+
* Returns human-readable status text for a given HTTP status code.
|
|
114
|
+
*/
|
|
115
|
+
function getStatusText(status) {
|
|
116
|
+
return (STATUS_TEXT_MAP[status] ||
|
|
117
|
+
(status >= 200 && status < 300 ? 'OK' : 'Unknown Status'));
|
|
118
|
+
}
|
|
119
|
+
/**
|
|
120
|
+
* Determines whether a status code represents a 2xx success.
|
|
121
|
+
*/
|
|
122
|
+
function isSuccessStatus(status) {
|
|
123
|
+
return status >= 200 && status < 300;
|
|
124
|
+
}
|
|
125
|
+
/**
|
|
126
|
+
* Determines whether a status code represents a 3xx redirection.
|
|
127
|
+
*/
|
|
128
|
+
function isRedirectStatus(status) {
|
|
129
|
+
return status >= 300 && status < 400;
|
|
130
|
+
}
|
|
131
|
+
/**
|
|
132
|
+
* Determines whether a status code represents a 4xx client error.
|
|
133
|
+
*/
|
|
134
|
+
function isClientError(status) {
|
|
135
|
+
return status >= 400 && status < 500;
|
|
136
|
+
}
|
|
137
|
+
/**
|
|
138
|
+
* Determines whether a status code represents a 5xx server error.
|
|
139
|
+
*/
|
|
140
|
+
function isServerError(status) {
|
|
141
|
+
return status >= 500 && status < 600;
|
|
142
|
+
}
|
|
143
|
+
// ─── Response Builders ────────────────────────────────────────────────────────
|
|
144
|
+
/**
|
|
145
|
+
* Creates a standard 200 OK success response envelope.
|
|
146
|
+
*
|
|
147
|
+
* @example
|
|
148
|
+
* return success(user, 'User profile retrieved successfully')
|
|
149
|
+
*/
|
|
150
|
+
function success(data, message, meta) {
|
|
6
151
|
const res = { success: true, data };
|
|
7
152
|
if (message !== undefined)
|
|
8
153
|
res.message = message;
|
|
154
|
+
if (meta !== undefined)
|
|
155
|
+
res.meta = meta;
|
|
156
|
+
return res;
|
|
157
|
+
}
|
|
158
|
+
/**
|
|
159
|
+
* Creates a standard 201 Created response envelope.
|
|
160
|
+
*
|
|
161
|
+
* @example
|
|
162
|
+
* return created(newUser, 'User created successfully')
|
|
163
|
+
*/
|
|
164
|
+
function created(data, message = 'Created', meta) {
|
|
165
|
+
const res = { success: true, data, message };
|
|
166
|
+
if (meta !== undefined)
|
|
167
|
+
res.meta = meta;
|
|
168
|
+
return res;
|
|
169
|
+
}
|
|
170
|
+
/**
|
|
171
|
+
* Creates a standard 202 Accepted response envelope for async background processing.
|
|
172
|
+
*
|
|
173
|
+
* @example
|
|
174
|
+
* return accepted({ jobId: '123' }, 'Job queued for background execution')
|
|
175
|
+
*/
|
|
176
|
+
function accepted(data = null, message = 'Accepted', meta) {
|
|
177
|
+
const res = { success: true, data, message };
|
|
178
|
+
if (meta !== undefined)
|
|
179
|
+
res.meta = meta;
|
|
9
180
|
return res;
|
|
10
181
|
}
|
|
11
|
-
|
|
182
|
+
/**
|
|
183
|
+
* Creates a standard 204 No Content response representation.
|
|
184
|
+
*
|
|
185
|
+
* @example
|
|
186
|
+
* return noContent()
|
|
187
|
+
*/
|
|
188
|
+
function noContent() {
|
|
189
|
+
return { success: true, data: null };
|
|
190
|
+
}
|
|
191
|
+
/**
|
|
192
|
+
* Creates a standard error response envelope.
|
|
193
|
+
*
|
|
194
|
+
* @example
|
|
195
|
+
* return error('Invalid credentials', 'AUTH_INVALID_CREDENTIALS', undefined, 401)
|
|
196
|
+
*/
|
|
197
|
+
function error(message, code, details, status) {
|
|
12
198
|
const res = { success: false, error: { message } };
|
|
13
199
|
if (code !== undefined)
|
|
14
200
|
res.error.code = code;
|
|
15
201
|
if (details !== undefined)
|
|
16
202
|
res.error.details = details;
|
|
203
|
+
if (status !== undefined)
|
|
204
|
+
res.error.status = status;
|
|
17
205
|
return res;
|
|
18
206
|
}
|
|
207
|
+
/**
|
|
208
|
+
* Creates a standardized RFC 7807 / RFC 9457 Problem Details object.
|
|
209
|
+
*
|
|
210
|
+
* @example
|
|
211
|
+
* return problem('Invalid Request Body', 422, 'The email field is invalid', {
|
|
212
|
+
* invalidParams: [{ name: 'email', reason: 'Must be a valid email format' }]
|
|
213
|
+
* })
|
|
214
|
+
*/
|
|
215
|
+
function problem(title, status, detail, options = {}) {
|
|
216
|
+
return {
|
|
217
|
+
title,
|
|
218
|
+
status,
|
|
219
|
+
...(detail ? { detail } : {}),
|
|
220
|
+
...options,
|
|
221
|
+
};
|
|
222
|
+
}
|
|
223
|
+
/**
|
|
224
|
+
* Creates a standardized paginated response envelope.
|
|
225
|
+
*
|
|
226
|
+
* @example
|
|
227
|
+
* return paginate(users, totalCount, { page: 1, limit: 20 })
|
|
228
|
+
*/
|
|
229
|
+
function paginate(data, total, options = {}, message, meta) {
|
|
230
|
+
const page = Math.max(1, Number(options.page) || 1);
|
|
231
|
+
const limit = Math.max(1, Number(options.limit) || 20);
|
|
232
|
+
const totalPages = Math.ceil(total / limit);
|
|
233
|
+
const hasNext = page < totalPages;
|
|
234
|
+
const hasPrev = page > 1;
|
|
235
|
+
const res = {
|
|
236
|
+
success: true,
|
|
237
|
+
data,
|
|
238
|
+
pagination: {
|
|
239
|
+
page,
|
|
240
|
+
limit,
|
|
241
|
+
total,
|
|
242
|
+
totalPages,
|
|
243
|
+
hasNextPage: hasNext,
|
|
244
|
+
hasPrevPage: hasPrev,
|
|
245
|
+
hasNext,
|
|
246
|
+
hasPrev,
|
|
247
|
+
},
|
|
248
|
+
};
|
|
249
|
+
if (message !== undefined)
|
|
250
|
+
res.message = message;
|
|
251
|
+
if (meta !== undefined)
|
|
252
|
+
res.meta = meta;
|
|
253
|
+
return res;
|
|
254
|
+
}
|
|
255
|
+
/**
|
|
256
|
+
* Calculates SQL/Database `skip` (offset) and `limit` from pagination query parameters.
|
|
257
|
+
*
|
|
258
|
+
* @example
|
|
259
|
+
* const { skip, limit, page } = getPaginationSkip(req.query)
|
|
260
|
+
* const users = await db.user.findMany({ skip, take: limit })
|
|
261
|
+
*/
|
|
262
|
+
function getPaginationSkip(query = {}) {
|
|
263
|
+
const page = Math.max(1, Number(query.page) || 1);
|
|
264
|
+
const limit = Math.max(1, Number(query.limit) || 20);
|
|
265
|
+
return {
|
|
266
|
+
skip: (page - 1) * limit,
|
|
267
|
+
limit,
|
|
268
|
+
page,
|
|
269
|
+
};
|
|
270
|
+
}
|
|
271
|
+
/**
|
|
272
|
+
* Helper to build custom JSON payload structure with optional status code and headers hint.
|
|
273
|
+
*/
|
|
274
|
+
function json(data, status = 200, headers = {}) {
|
|
275
|
+
return { data, status, headers };
|
|
276
|
+
}
|
|
277
|
+
/**
|
|
278
|
+
* Helper to create a redirection descriptor.
|
|
279
|
+
*/
|
|
280
|
+
function redirect(url, status = 302) {
|
|
281
|
+
return { redirect: url, status };
|
|
282
|
+
}
|
|
283
|
+
// ─── Direct Re-exports ────────────────────────────────────────────────────────
|
|
284
|
+
var response_1 = require("../server/response");
|
|
285
|
+
Object.defineProperty(exports, "ExisResponse", { enumerable: true, get: function () { return response_1.ExisResponse; } });
|
|
286
|
+
var sse_1 = require("../server/sse");
|
|
287
|
+
Object.defineProperty(exports, "SSEStream", { enumerable: true, get: function () { return sse_1.SSEStream; } });
|
|
288
|
+
Object.defineProperty(exports, "formatSSEEvent", { enumerable: true, get: function () { return sse_1.formatSSEEvent; } });
|
|
19
289
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/response/index.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/response/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -11,16 +11,16 @@ export interface BoundaryExcludeRule {
|
|
|
11
11
|
methods?: HttpMethod[];
|
|
12
12
|
method?: HttpMethod;
|
|
13
13
|
}
|
|
14
|
-
export interface BoundaryConfig {
|
|
14
|
+
export interface BoundaryConfig<TContext = Record<string, any>> {
|
|
15
15
|
/**
|
|
16
16
|
* Middleware to apply to all routes in this directory and subdirectories.
|
|
17
17
|
* Replaces the old router.use() globally for a folder.
|
|
18
18
|
*/
|
|
19
|
-
middleware?: Handler[] | Handler
|
|
19
|
+
middleware?: Handler<any, any, any, any, TContext>[] | Handler<any, any, any, any, TContext>;
|
|
20
20
|
/**
|
|
21
21
|
* Alias for `middleware`. Supports plural naming.
|
|
22
22
|
*/
|
|
23
|
-
middlewares?: Handler[] | Handler
|
|
23
|
+
middlewares?: Handler<any, any, any, any, TContext>[] | Handler<any, any, any, any, TContext>;
|
|
24
24
|
/**
|
|
25
25
|
* CORS configuration applied to all routes in this directory and subdirectories.
|
|
26
26
|
*/
|
|
@@ -62,15 +62,35 @@ export interface BoundaryConfig {
|
|
|
62
62
|
* Folder-scoped request timeout (in milliseconds).
|
|
63
63
|
* Can be a static number or a dynamic function evaluated per-request.
|
|
64
64
|
*/
|
|
65
|
-
timeout?: number | ((req: import('../types').Request<any, any, any>) => number | undefined);
|
|
65
|
+
timeout?: number | ((req: import('../types').Request<any, any, any, TContext>) => number | undefined);
|
|
66
66
|
/**
|
|
67
67
|
* Cascading metadata (e.g., OpenAPI tags, roles) applied to all routes in this directory.
|
|
68
68
|
*/
|
|
69
69
|
metadata?: Record<string, any>;
|
|
70
|
+
/**
|
|
71
|
+
* Opt-in security scanner noise suppression & exploit probe blocker.
|
|
72
|
+
* Intercepts automated vulnerability scanner probes (e.g. `/.env`, `/.git`, `/.DS_Store`)
|
|
73
|
+
* and blackholes them immediately without running downstream handlers or flooding error logs.
|
|
74
|
+
*/
|
|
75
|
+
blockProbes?: boolean | import('../middleware/security').BlockProbesOptions;
|
|
76
|
+
blockSuspiciousProbes?: boolean | import('../middleware/security').BlockProbesOptions;
|
|
77
|
+
/**
|
|
78
|
+
* Hook executed immediately before any route handler in this boundary.
|
|
79
|
+
* Can short-circuit execution by returning `false` or sending a response directly.
|
|
80
|
+
*/
|
|
81
|
+
beforeHandle?: BoundaryBeforeHandleHook<TContext> | BoundaryBeforeHandleHook<TContext>[];
|
|
82
|
+
/**
|
|
83
|
+
* Hook executed immediately after a route handler in this boundary successfully returns.
|
|
84
|
+
* Receives `(req, res, data)` and can transform the outgoing payload or perform audit logging.
|
|
85
|
+
*/
|
|
86
|
+
afterHandle?: BoundaryAfterHandleHook<any, TContext> | BoundaryAfterHandleHook<any, TContext>[];
|
|
70
87
|
}
|
|
88
|
+
export type { BlockProbesOptions } from '../middleware/security';
|
|
89
|
+
export type BoundaryBeforeHandleHook<TContext = Record<string, any>> = (req: import('../types').Request<any, any, any, TContext>, res: import('../types').Response) => void | boolean | Promise<void | boolean>;
|
|
90
|
+
export type BoundaryAfterHandleHook<T = any, TContext = Record<string, any>> = (req: import('../types').Request<any, any, any, TContext>, res: import('../types').Response, data?: T) => void | any | Promise<void | any>;
|
|
71
91
|
/**
|
|
72
92
|
* Defines a boundary that acts as folder-scoped config + request pipeline for
|
|
73
93
|
* everything in this directory and subdirectories.
|
|
74
94
|
*/
|
|
75
|
-
export declare function defineBoundary(config: BoundaryConfig): BoundaryConfig
|
|
95
|
+
export declare function defineBoundary<TContext = Record<string, any>>(config: BoundaryConfig<TContext>): BoundaryConfig<TContext>;
|
|
76
96
|
//# sourceMappingURL=boundary.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"boundary.d.ts","sourceRoot":"","sources":["../../src/router/boundary.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,UAAU,CAAA;AAC/D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAA;AAEzD,MAAM,WAAW,eAAe;IAC9B,GAAG,EAAE,OAAO,UAAU,EAAE,OAAO,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAA;IAC9C,GAAG,EAAE,OAAO,UAAU,EAAE,QAAQ,CAAA;IAChC,GAAG,CAAC,EAAE,GAAG,CAAA;IACT,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;CACnB;AAED,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,MAAM,CAAA;IACZ,OAAO,CAAC,EAAE,UAAU,EAAE,CAAA;IACtB,MAAM,CAAC,EAAE,UAAU,CAAA;CACpB;AAED,MAAM,WAAW,cAAc;
|
|
1
|
+
{"version":3,"file":"boundary.d.ts","sourceRoot":"","sources":["../../src/router/boundary.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"boundary.js","sourceRoot":"","sources":["../../src/router/boundary.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"boundary.js","sourceRoot":"","sources":["../../src/router/boundary.ts"],"names":[],"mappings":";;AA0IA,wCAIC;AARD;;;GAGG;AACH,SAAgB,cAAc,CAC5B,MAAgC;IAEhC,OAAO,MAAM,CAAA;AACf,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"controller-registrar.d.ts","sourceRoot":"","sources":["../../src/router/controller-registrar.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,eAAe,CAAA;AAGxC,qBAAa,mBAAmB;IAClB,OAAO,CAAC,GAAG;gBAAH,GAAG,EAAE,GAAG,CAAC,GAAG,CAAC;IAI1B,mBAAmB,CACxB,WAAW,EAAE,GAAG,EAAE,EAClB,QAAQ,SAAK,EACb,iBAAiB,GAAE,GAAG,EAAO,GAC5B,GAAG,CAAC,GAAG,CAAC;IAIX,OAAO,CAAC,oBAAoB;
|
|
1
|
+
{"version":3,"file":"controller-registrar.d.ts","sourceRoot":"","sources":["../../src/router/controller-registrar.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,eAAe,CAAA;AAGxC,qBAAa,mBAAmB;IAClB,OAAO,CAAC,GAAG;gBAAH,GAAG,EAAE,GAAG,CAAC,GAAG,CAAC;IAI1B,mBAAmB,CACxB,WAAW,EAAE,GAAG,EAAE,EAClB,QAAQ,SAAK,EACb,iBAAiB,GAAE,GAAG,EAAO,GAC5B,GAAG,CAAC,GAAG,CAAC;IAIX,OAAO,CAAC,oBAAoB;CAof7B"}
|