@spfn/core 0.1.0-alpha.7 → 0.1.0-alpha.72
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 +168 -195
- package/dist/auto-loader-JFaZ9gON.d.ts +80 -0
- package/dist/cache/index.d.ts +211 -0
- package/dist/cache/index.js +992 -0
- package/dist/cache/index.js.map +1 -0
- package/dist/client/index.d.ts +92 -92
- package/dist/client/index.js +80 -85
- package/dist/client/index.js.map +1 -1
- package/dist/codegen/generators/index.d.ts +19 -0
- package/dist/codegen/generators/index.js +1491 -0
- package/dist/codegen/generators/index.js.map +1 -0
- package/dist/codegen/index.d.ts +76 -60
- package/dist/codegen/index.js +1479 -736
- package/dist/codegen/index.js.map +1 -1
- package/dist/database-errors-BNNmLTJE.d.ts +86 -0
- package/dist/db/index.d.ts +844 -44
- package/dist/db/index.js +1262 -1309
- package/dist/db/index.js.map +1 -1
- package/dist/env/index.d.ts +508 -0
- package/dist/env/index.js +1106 -0
- package/dist/env/index.js.map +1 -0
- package/dist/error-handler-wjLL3v-a.d.ts +44 -0
- package/dist/errors/index.d.ts +136 -0
- package/dist/errors/index.js +172 -0
- package/dist/errors/index.js.map +1 -0
- package/dist/index-DHiAqhKv.d.ts +101 -0
- package/dist/index.d.ts +3 -374
- package/dist/index.js +2394 -2176
- package/dist/index.js.map +1 -1
- package/dist/logger/index.d.ts +94 -0
- package/dist/logger/index.js +774 -0
- package/dist/logger/index.js.map +1 -0
- package/dist/middleware/index.d.ts +33 -0
- package/dist/middleware/index.js +890 -0
- package/dist/middleware/index.js.map +1 -0
- package/dist/route/index.d.ts +21 -53
- package/dist/route/index.js +1234 -219
- package/dist/route/index.js.map +1 -1
- package/dist/server/index.d.ts +18 -0
- package/dist/server/index.js +2390 -2058
- package/dist/server/index.js.map +1 -1
- package/dist/types-Dzggq1Yb.d.ts +170 -0
- package/package.json +59 -15
- package/dist/auto-loader-C44TcLmM.d.ts +0 -125
- package/dist/bind-pssq1NRT.d.ts +0 -34
- package/dist/postgres-errors-CY_Es8EJ.d.ts +0 -1703
- package/dist/scripts/index.d.ts +0 -24
- package/dist/scripts/index.js +0 -1201
- package/dist/scripts/index.js.map +0 -1
- package/dist/scripts/templates/api-index.template.txt +0 -10
- package/dist/scripts/templates/api-tag.template.txt +0 -11
- package/dist/scripts/templates/contract.template.txt +0 -87
- package/dist/scripts/templates/entity-type.template.txt +0 -31
- package/dist/scripts/templates/entity.template.txt +0 -19
- package/dist/scripts/templates/index.template.txt +0 -10
- package/dist/scripts/templates/repository.template.txt +0 -37
- package/dist/scripts/templates/routes-id.template.txt +0 -59
- package/dist/scripts/templates/routes-index.template.txt +0 -44
- package/dist/types-SlzTr8ZO.d.ts +0 -143
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Database Error Classes
|
|
3
|
+
*
|
|
4
|
+
* Type-safe error handling with custom error class hierarchy
|
|
5
|
+
* Mapped to HTTP status codes for API responses
|
|
6
|
+
*/
|
|
7
|
+
/**
|
|
8
|
+
* Base Database Error
|
|
9
|
+
*
|
|
10
|
+
* Base class for all database-related errors
|
|
11
|
+
*/
|
|
12
|
+
declare class DatabaseError<TDetails extends Record<string, unknown> = Record<string, unknown>> extends Error {
|
|
13
|
+
readonly statusCode: number;
|
|
14
|
+
readonly details?: TDetails;
|
|
15
|
+
readonly timestamp: Date;
|
|
16
|
+
constructor(message: string, statusCode?: number, details?: TDetails);
|
|
17
|
+
/**
|
|
18
|
+
* Serialize error for API response
|
|
19
|
+
*/
|
|
20
|
+
toJSON(): {
|
|
21
|
+
name: string;
|
|
22
|
+
message: string;
|
|
23
|
+
statusCode: number;
|
|
24
|
+
details: TDetails | undefined;
|
|
25
|
+
timestamp: string;
|
|
26
|
+
};
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* Connection Error (503 Service Unavailable)
|
|
30
|
+
*
|
|
31
|
+
* Database connection failure, connection pool exhaustion, etc.
|
|
32
|
+
*/
|
|
33
|
+
declare class ConnectionError extends DatabaseError {
|
|
34
|
+
constructor(message: string, details?: Record<string, any>);
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* Query Error (500 Internal Server Error)
|
|
38
|
+
*
|
|
39
|
+
* SQL query execution failure, syntax errors, etc.
|
|
40
|
+
*/
|
|
41
|
+
declare class QueryError extends DatabaseError {
|
|
42
|
+
constructor(message: string, statusCode?: number, details?: Record<string, any>);
|
|
43
|
+
}
|
|
44
|
+
/**
|
|
45
|
+
* Entity Not Found Error (404 Not Found)
|
|
46
|
+
*
|
|
47
|
+
* Database entity does not exist
|
|
48
|
+
*/
|
|
49
|
+
declare class EntityNotFoundError extends QueryError {
|
|
50
|
+
constructor(resource: string, id: string | number);
|
|
51
|
+
}
|
|
52
|
+
/**
|
|
53
|
+
* Constraint Violation Error (400 Bad Request)
|
|
54
|
+
*
|
|
55
|
+
* Database constraint violation (NOT NULL, CHECK, FOREIGN KEY, etc.)
|
|
56
|
+
* This is different from HTTP ValidationError which validates request input
|
|
57
|
+
*/
|
|
58
|
+
declare class ConstraintViolationError extends QueryError {
|
|
59
|
+
constructor(message: string, details?: Record<string, any>);
|
|
60
|
+
}
|
|
61
|
+
/**
|
|
62
|
+
* Transaction Error (500 Internal Server Error)
|
|
63
|
+
*
|
|
64
|
+
* Transaction start/commit/rollback failure
|
|
65
|
+
*/
|
|
66
|
+
declare class TransactionError extends DatabaseError {
|
|
67
|
+
constructor(message: string, statusCode?: number, details?: Record<string, any>);
|
|
68
|
+
}
|
|
69
|
+
/**
|
|
70
|
+
* Deadlock Error (409 Conflict)
|
|
71
|
+
*
|
|
72
|
+
* Database deadlock detected
|
|
73
|
+
*/
|
|
74
|
+
declare class DeadlockError extends TransactionError {
|
|
75
|
+
constructor(message: string, details?: Record<string, any>);
|
|
76
|
+
}
|
|
77
|
+
/**
|
|
78
|
+
* Duplicate Entry Error (409 Conflict)
|
|
79
|
+
*
|
|
80
|
+
* Unique constraint violation (e.g., duplicate email)
|
|
81
|
+
*/
|
|
82
|
+
declare class DuplicateEntryError extends QueryError {
|
|
83
|
+
constructor(field: string, value: string | number);
|
|
84
|
+
}
|
|
85
|
+
|
|
86
|
+
export { ConnectionError as C, DatabaseError as D, EntityNotFoundError as E, QueryError as Q, TransactionError as T, ConstraintViolationError as a, DeadlockError as b, DuplicateEntryError as c };
|