@xrystal/dto 26.6.27-v12
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 +724 -0
- package/dist/adapters/elysia.cjs +820 -0
- package/dist/adapters/elysia.d.ts +138 -0
- package/dist/adapters/elysia.js +816 -0
- package/dist/adapters/express.cjs +789 -0
- package/dist/adapters/express.d.ts +49 -0
- package/dist/adapters/express.js +785 -0
- package/dist/adapters/index.d.ts +7 -0
- package/dist/adapters/node.cjs +790 -0
- package/dist/adapters/node.d.ts +27 -0
- package/dist/adapters/node.js +786 -0
- package/dist/adapters/shared.d.ts +11 -0
- package/dist/adapters/socketio.cjs +767 -0
- package/dist/adapters/socketio.d.ts +31 -0
- package/dist/adapters/socketio.js +763 -0
- package/dist/adapters/websocket.cjs +759 -0
- package/dist/adapters/websocket.d.ts +31 -0
- package/dist/adapters/websocket.js +754 -0
- package/dist/core/assemble-log.d.ts +1 -0
- package/dist/core/assemble-queue.d.ts +1 -0
- package/dist/core/assemble.d.ts +9 -0
- package/dist/core/builder.d.ts +49 -0
- package/dist/core/config.d.ts +10 -0
- package/dist/core/context.d.ts +5 -0
- package/dist/core/hooks.d.ts +8 -0
- package/dist/core/index.cjs +1002 -0
- package/dist/core/index.d.ts +14 -0
- package/dist/core/index.js +986 -0
- package/dist/core/log-dto.d.ts +1 -0
- package/dist/core/metadata.d.ts +6 -0
- package/dist/core/plugins.d.ts +10 -0
- package/dist/core/presets.d.ts +32 -0
- package/dist/core/queue-dto.d.ts +1 -0
- package/dist/core/response-dto.d.ts +1 -0
- package/dist/core/schema-utils.d.ts +1 -0
- package/dist/dto/index.cjs +909 -0
- package/dist/dto/index.d.ts +6 -0
- package/dist/dto/index.js +898 -0
- package/dist/dto/log/assemble.d.ts +3 -0
- package/dist/dto/log/builder.d.ts +41 -0
- package/dist/dto/log/index.cjs +152 -0
- package/dist/dto/log/index.d.ts +3 -0
- package/dist/dto/log/index.js +149 -0
- package/dist/dto/log/types.d.ts +26 -0
- package/dist/dto/queue/assemble.d.ts +2 -0
- package/dist/dto/queue/builder.d.ts +35 -0
- package/dist/dto/queue/index.cjs +154 -0
- package/dist/dto/queue/index.d.ts +3 -0
- package/dist/dto/queue/index.js +151 -0
- package/dist/dto/queue/types.d.ts +34 -0
- package/dist/dto/response/assemble.d.ts +1 -0
- package/dist/dto/response/dto.d.ts +39 -0
- package/dist/dto/response/index.cjs +179 -0
- package/dist/dto/response/index.d.ts +2 -0
- package/dist/dto/response/index.js +176 -0
- package/dist/dto/runtime/dto.cjs +1318 -0
- package/dist/dto/runtime/dto.d.ts +64 -0
- package/dist/dto/runtime/dto.js +1315 -0
- package/dist/dto/shared/base-dto.d.ts +12 -0
- package/dist/dto/shared/schema-utils.d.ts +1 -0
- package/dist/enums/node-env.d.ts +5 -0
- package/dist/errors/codes.d.ts +15 -0
- package/dist/errors/error.d.ts +32 -0
- package/dist/errors/index.d.ts +2 -0
- package/dist/index.cjs +1482 -0
- package/dist/index.d.ts +22 -0
- package/dist/index.js +1433 -0
- package/dist/types/builder.d.ts +15 -0
- package/dist/types/codes.d.ts +7 -0
- package/dist/types/context.d.ts +16 -0
- package/dist/types/hooks.d.ts +7 -0
- package/dist/types/index.d.ts +10 -0
- package/dist/types/log.d.ts +1 -0
- package/dist/types/metadata.d.ts +7 -0
- package/dist/types/options.d.ts +24 -0
- package/dist/types/plugin.d.ts +35 -0
- package/dist/types/queue.d.ts +1 -0
- package/dist/types/response.d.ts +43 -0
- package/dist/utils/constants/http.d.ts +2 -0
- package/dist/utils/constants/index.d.ts +3 -0
- package/dist/utils/constants/security-headers.d.ts +1 -0
- package/dist/utils/constants/status-codes.d.ts +35 -0
- package/dist/utils/helpers/index.d.ts +2 -0
- package/dist/utils/helpers/request-id.d.ts +3 -0
- package/dist/utils/helpers/uuid.d.ts +2 -0
- package/dist/utils/index.d.ts +2 -0
- package/package.json +130 -0
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Shared contract for every JSON DTO shape in the library.
|
|
3
|
+
* Each subclass owns field order, required fields at build, and `.schema()` last-wins rules.
|
|
4
|
+
*/
|
|
5
|
+
export declare abstract class BaseDTO<TBody, TSchemaInput> {
|
|
6
|
+
abstract build(): TBody;
|
|
7
|
+
/**
|
|
8
|
+
* Apply partial fields. Last call wins on the chain.
|
|
9
|
+
* When a nested `payload` key is present, it replaces the entire payload — no merge.
|
|
10
|
+
*/
|
|
11
|
+
abstract schema(input: TSchemaInput): this;
|
|
12
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function assertRequiredFields(input: Record<string, unknown>, fields: string[], label?: string): void;
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import type { CodeMap, CodeOverrides } from '../types/codes.js';
|
|
2
|
+
export declare const DefaultCodes: {
|
|
3
|
+
readonly SUCCESS: 0;
|
|
4
|
+
readonly CLIENT: 1;
|
|
5
|
+
readonly SERVER: 2;
|
|
6
|
+
readonly VALIDATION: 3;
|
|
7
|
+
};
|
|
8
|
+
export type DefaultCodeKey = keyof typeof DefaultCodes;
|
|
9
|
+
export declare function createCodeRegistry(overrides?: CodeOverrides): CodeMap;
|
|
10
|
+
export declare function isSuccessCode(code: number, codes: CodeMap): boolean;
|
|
11
|
+
export declare function resolveCodeFromHttpStatus(statusCode: number, codes: CodeMap): number;
|
|
12
|
+
export declare function defaultMessageForCode(code: number, codes: CodeMap): string;
|
|
13
|
+
export declare function resolveStatusFromCode(code: number, codes: CodeMap): boolean;
|
|
14
|
+
export declare function lookupCode(codes: CodeMap, key: string, fallback: number): number;
|
|
15
|
+
export declare function inferHttpStatusFromCode(code: number | undefined, codes: CodeMap): number;
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import type { CodeOverrides } from '../types/codes.js';
|
|
2
|
+
export interface ResponseErrorOptions {
|
|
3
|
+
message?: string;
|
|
4
|
+
code?: number;
|
|
5
|
+
httpStatus?: number;
|
|
6
|
+
payload?: Record<string, unknown>;
|
|
7
|
+
cause?: unknown;
|
|
8
|
+
codes?: CodeOverrides;
|
|
9
|
+
}
|
|
10
|
+
export declare class ResponseError extends Error {
|
|
11
|
+
readonly code: number;
|
|
12
|
+
readonly httpStatus: number;
|
|
13
|
+
readonly payload?: Record<string, unknown>;
|
|
14
|
+
constructor(options?: ResponseErrorOptions);
|
|
15
|
+
toJSON(): {
|
|
16
|
+
name: string;
|
|
17
|
+
message: string;
|
|
18
|
+
code: number;
|
|
19
|
+
httpStatus: number;
|
|
20
|
+
payload: Record<string, unknown> | undefined;
|
|
21
|
+
};
|
|
22
|
+
}
|
|
23
|
+
export declare class ClientError extends ResponseError {
|
|
24
|
+
constructor(message?: string, options?: Omit<ResponseErrorOptions, 'code' | 'message'>);
|
|
25
|
+
}
|
|
26
|
+
export declare class ServerError extends ResponseError {
|
|
27
|
+
constructor(message?: string, options?: Omit<ResponseErrorOptions, 'code' | 'message'>);
|
|
28
|
+
}
|
|
29
|
+
export declare class ValidationError extends ResponseError {
|
|
30
|
+
constructor(message?: string, options?: Omit<ResponseErrorOptions, 'code' | 'message'>);
|
|
31
|
+
}
|
|
32
|
+
export declare function isResponseError(value: unknown): value is ResponseError;
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export { DefaultCodes, createCodeRegistry, isSuccessCode, resolveCodeFromHttpStatus, defaultMessageForCode, resolveStatusFromCode, inferHttpStatusFromCode, lookupCode, type DefaultCodeKey, } from './codes.js';
|
|
2
|
+
export { ResponseError, ClientError, ServerError, ValidationError, isResponseError, type ResponseErrorOptions, } from './error.js';
|