equipped 5.3.2 → 5.3.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 +7 -0
- package/dist/cjs/errors/index.cjs +11 -0
- package/dist/cjs/errors/index.cjs.map +1 -1
- package/dist/cjs/errors/index.min.cjs +1 -1
- package/dist/cjs/errors/index.min.cjs.map +1 -1
- package/dist/cjs/orm/adapters/postgresql/index.cjs +8 -0
- package/dist/cjs/orm/adapters/postgresql/index.cjs.map +1 -1
- package/dist/cjs/orm/adapters/postgresql/index.min.cjs +5 -5
- package/dist/cjs/orm/adapters/postgresql/index.min.cjs.map +1 -1
- package/dist/cjs/server/adapters/express/index.cjs +1 -0
- package/dist/cjs/server/adapters/express/index.cjs.map +1 -1
- package/dist/cjs/server/adapters/express/index.min.cjs +1 -1
- package/dist/cjs/server/adapters/express/index.min.cjs.map +1 -1
- package/dist/cjs/server/adapters/fastify/index.cjs +1 -0
- package/dist/cjs/server/adapters/fastify/index.cjs.map +1 -1
- package/dist/cjs/server/adapters/fastify/index.min.cjs +1 -1
- package/dist/cjs/server/adapters/fastify/index.min.cjs.map +1 -1
- package/dist/cjs/server/index.cjs +1 -0
- package/dist/cjs/server/index.cjs.map +1 -1
- package/dist/cjs/server/index.min.cjs +4 -4
- package/dist/cjs/server/index.min.cjs.map +1 -1
- package/dist/cjs/validations/index.cjs +1 -0
- package/dist/cjs/validations/index.cjs.map +1 -1
- package/dist/cjs/validations/index.min.cjs +1 -1
- package/dist/cjs/validations/index.min.cjs.map +1 -1
- package/dist/esm/cache/adapters/in-memory/index.min.mjs +1 -1
- package/dist/esm/cache/adapters/in-memory/index.mjs +3 -3
- package/dist/esm/cache/adapters/redis/index.min.mjs +1 -1
- package/dist/esm/cache/adapters/redis/index.mjs +4 -4
- package/dist/esm/cache/index.min.mjs +1 -1
- package/dist/esm/cache/index.mjs +2 -2
- package/dist/esm/{chunk-YDQW6ETS.min.mjs → chunk-4GZ43EQ2.min.mjs} +2 -2
- package/dist/esm/{chunk-DAUQA32Q.min.mjs → chunk-5FEVQT6K.min.mjs} +2 -2
- package/dist/esm/{chunk-RPPYCWXW.mjs → chunk-74GY55PM.mjs} +2 -2
- package/dist/esm/{chunk-CEYT5YBA.mjs → chunk-7N4WUZ7P.mjs} +11 -1
- package/dist/esm/chunk-7N4WUZ7P.mjs.map +1 -0
- package/dist/esm/{chunk-NNFUYHQ7.mjs → chunk-A332TTED.mjs} +2 -2
- package/dist/esm/{chunk-PCEHFZ6G.mjs → chunk-BONYW6LU.mjs} +3 -3
- package/dist/esm/{chunk-T2O72JBW.mjs → chunk-C3G4W4ZV.mjs} +3 -3
- package/dist/esm/{chunk-X7VNAGLR.min.mjs → chunk-LJZOS62I.min.mjs} +2 -2
- package/dist/esm/{chunk-AODOD22O.min.mjs → chunk-MCX2O5IT.min.mjs} +2 -2
- package/dist/esm/{chunk-FQYRVHQT.mjs → chunk-MNKDFIVK.mjs} +2 -2
- package/dist/esm/{chunk-APSDCRY5.min.mjs → chunk-N3OD4QL2.min.mjs} +8 -8
- package/dist/esm/chunk-N3OD4QL2.min.mjs.map +1 -0
- package/dist/esm/{chunk-VQO4MSEC.mjs → chunk-RFJ5URMP.mjs} +2 -2
- package/dist/esm/{chunk-DAK7OKSH.min.mjs → chunk-RX4XPABH.min.mjs} +2 -2
- package/dist/esm/{chunk-ZDBDR3IB.min.mjs → chunk-SPOVKWV3.min.mjs} +2 -2
- package/dist/esm/{chunk-RIXTQQUU.mjs → chunk-XESM7IWM.mjs} +2 -2
- package/dist/esm/{chunk-26BOI6IL.mjs → chunk-XJKBHQWO.mjs} +3 -3
- package/dist/esm/{chunk-XTXAEBXY.min.mjs → chunk-YC6V4HLT.min.mjs} +2 -2
- package/dist/esm/{chunk-QCCDJLBH.min.mjs → chunk-YWQTFKNY.min.mjs} +2 -2
- package/dist/esm/dbs/adapters/mongodb/index.min.mjs +1 -1
- package/dist/esm/dbs/adapters/mongodb/index.mjs +4 -4
- package/dist/esm/dbs/index.min.mjs +1 -1
- package/dist/esm/dbs/index.mjs +4 -4
- package/dist/esm/errors/index.min.mjs +1 -1
- package/dist/esm/errors/index.mjs +3 -1
- package/dist/esm/events/adapters/kafka/index.min.mjs +1 -1
- package/dist/esm/events/adapters/kafka/index.mjs +3 -3
- package/dist/esm/events/adapters/rabbitmq/index.min.mjs +1 -1
- package/dist/esm/events/adapters/rabbitmq/index.mjs +2 -2
- package/dist/esm/index.min.mjs +1 -1
- package/dist/esm/index.mjs +1 -1
- package/dist/esm/instance/index.min.mjs +1 -1
- package/dist/esm/instance/index.mjs +1 -1
- package/dist/esm/introspection-TO27QT2X.min.mjs +2 -0
- package/dist/esm/{introspection-FGDVYTPP.mjs → introspection-ZUQYVEFC.mjs} +3 -3
- package/dist/esm/jobs/adapters/redis/index.min.mjs +1 -1
- package/dist/esm/jobs/adapters/redis/index.mjs +4 -4
- package/dist/esm/orm/adapters/in-memory/index.min.mjs +1 -1
- package/dist/esm/orm/adapters/in-memory/index.mjs +3 -3
- package/dist/esm/orm/adapters/json/index.min.mjs +1 -1
- package/dist/esm/orm/adapters/json/index.mjs +3 -3
- package/dist/esm/orm/adapters/mongodb/index.min.mjs +1 -1
- package/dist/esm/orm/adapters/mongodb/index.mjs +2 -2
- package/dist/esm/orm/adapters/postgresql/index.min.mjs +2 -2
- package/dist/esm/orm/adapters/postgresql/index.mjs +4 -4
- package/dist/esm/orm/index.min.mjs +1 -1
- package/dist/esm/orm/index.mjs +3 -3
- package/dist/esm/server/adapters/express/index.min.mjs +1 -1
- package/dist/esm/server/adapters/express/index.mjs +2 -2
- package/dist/esm/server/adapters/fastify/index.min.mjs +1 -1
- package/dist/esm/server/adapters/fastify/index.mjs +2 -2
- package/dist/esm/server/index.min.mjs +1 -1
- package/dist/esm/server/index.mjs +1 -1
- package/dist/esm/utilities/index.min.mjs +1 -1
- package/dist/esm/utilities/index.mjs +2 -2
- package/dist/esm/validations/index.min.mjs +1 -1
- package/dist/esm/validations/index.mjs +1 -1
- package/dist/types/{base-qDndMBf8.d.ts → base-BnwwLupM.d.ts} +1 -1
- package/dist/types/cache/adapters/in-memory/index.js +5 -5
- package/dist/types/cache/adapters/redis/index.js +4 -4
- package/dist/types/cache/index.js +2 -2
- package/dist/types/{chunk-H5V6ADFD.js → chunk-7MXHWHRV.js} +1 -1
- package/dist/types/{chunk-GDMGPX4C.js → chunk-BKXNLF6X.js} +1 -1
- package/dist/types/{chunk-4YQA5GPT.js → chunk-DZFKDZDZ.js} +2 -2
- package/dist/types/{chunk-AQIV47BY.js → chunk-GQRSK2KP.js} +4 -4
- package/dist/types/{chunk-T7K7PO6G.js → chunk-SZAA5GF6.js} +1 -1
- package/dist/types/{chunk-35CDCTLR.js → chunk-UGLZIYAR.js} +1 -1
- package/dist/types/{chunk-DA2VYP7D.js → chunk-UR7O43FC.js} +1 -1
- package/dist/types/{chunk-OOKJEMQI.js → chunk-X5ZDIXCZ.js} +2 -2
- package/dist/types/{chunk-BKDWUJRG.js → chunk-YGIIUOQM.js} +10 -0
- package/dist/types/dbs/adapters/mongodb/index.js +4 -4
- package/dist/types/dbs/index.js +4 -4
- package/dist/types/errors/index.d.ts +8 -3
- package/dist/types/errors/index.js +3 -1
- package/dist/types/events/adapters/kafka/index.js +3 -3
- package/dist/types/events/adapters/rabbitmq/index.js +2 -2
- package/dist/types/index.js +1 -1
- package/dist/types/instance/index.js +1 -1
- package/dist/types/{introspection-FSNS33CQ.js → introspection-ZQMYTW6H.js} +2 -2
- package/dist/types/jobs/adapters/redis/index.js +4 -4
- package/dist/types/orm/adapters/in-memory/index.js +3 -3
- package/dist/types/orm/adapters/json/index.js +3 -3
- package/dist/types/orm/adapters/mongodb/index.js +2 -2
- package/dist/types/orm/adapters/postgresql/index.js +4 -4
- package/dist/types/orm/index.js +3 -3
- package/dist/types/{requestError-DdaL8hc3.d.ts → requestError-BmOhSuFb.d.ts} +1 -0
- package/dist/types/server/adapters/express/index.d.ts +2 -2
- package/dist/types/server/adapters/express/index.js +2 -2
- package/dist/types/server/adapters/fastify/index.d.ts +3 -3
- package/dist/types/server/adapters/fastify/index.js +2 -2
- package/dist/types/server/index.d.ts +4 -4
- package/dist/types/server/index.js +1 -1
- package/dist/types/utilities/index.js +2 -2
- package/dist/types/{validationError-oigtHqBi.d.ts → validationError-C2tVK4s7.d.ts} +1 -1
- package/dist/types/validations/index.d.ts +4 -4
- package/dist/types/validations/index.js +1 -1
- package/package.json +1 -1
- package/dist/esm/chunk-APSDCRY5.min.mjs.map +0 -1
- package/dist/esm/chunk-CEYT5YBA.mjs.map +0 -1
- package/dist/esm/introspection-UDWDS6DV.min.mjs +0 -2
- /package/dist/esm/{chunk-YDQW6ETS.min.mjs.map → chunk-4GZ43EQ2.min.mjs.map} +0 -0
- /package/dist/esm/{chunk-DAUQA32Q.min.mjs.map → chunk-5FEVQT6K.min.mjs.map} +0 -0
- /package/dist/esm/{chunk-RPPYCWXW.mjs.map → chunk-74GY55PM.mjs.map} +0 -0
- /package/dist/esm/{chunk-NNFUYHQ7.mjs.map → chunk-A332TTED.mjs.map} +0 -0
- /package/dist/esm/{chunk-PCEHFZ6G.mjs.map → chunk-BONYW6LU.mjs.map} +0 -0
- /package/dist/esm/{chunk-T2O72JBW.mjs.map → chunk-C3G4W4ZV.mjs.map} +0 -0
- /package/dist/esm/{chunk-X7VNAGLR.min.mjs.map → chunk-LJZOS62I.min.mjs.map} +0 -0
- /package/dist/esm/{chunk-AODOD22O.min.mjs.map → chunk-MCX2O5IT.min.mjs.map} +0 -0
- /package/dist/esm/{chunk-FQYRVHQT.mjs.map → chunk-MNKDFIVK.mjs.map} +0 -0
- /package/dist/esm/{chunk-VQO4MSEC.mjs.map → chunk-RFJ5URMP.mjs.map} +0 -0
- /package/dist/esm/{chunk-DAK7OKSH.min.mjs.map → chunk-RX4XPABH.min.mjs.map} +0 -0
- /package/dist/esm/{chunk-ZDBDR3IB.min.mjs.map → chunk-SPOVKWV3.min.mjs.map} +0 -0
- /package/dist/esm/{chunk-RIXTQQUU.mjs.map → chunk-XESM7IWM.mjs.map} +0 -0
- /package/dist/esm/{chunk-26BOI6IL.mjs.map → chunk-XJKBHQWO.mjs.map} +0 -0
- /package/dist/esm/{chunk-XTXAEBXY.min.mjs.map → chunk-YC6V4HLT.min.mjs.map} +0 -0
- /package/dist/esm/{chunk-QCCDJLBH.min.mjs.map → chunk-YWQTFKNY.min.mjs.map} +0 -0
- /package/dist/esm/{introspection-FGDVYTPP.mjs.map → introspection-TO27QT2X.min.mjs.map} +0 -0
- /package/dist/esm/{introspection-UDWDS6DV.min.mjs.map → introspection-ZUQYVEFC.mjs.map} +0 -0
package/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,13 @@
|
|
|
2
2
|
|
|
3
3
|
All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines.
|
|
4
4
|
|
|
5
|
+
### [5.3.3](https://github.com/kevinand11/equipped/compare/v5.3.2...v5.3.3) (2026-06-21)
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
### Features
|
|
9
|
+
|
|
10
|
+
* **server:** add precondition required error ([b4630f8](https://github.com/kevinand11/equipped/commit/b4630f841858858af23a4d7f498e7a3ddba83b5b))
|
|
11
|
+
|
|
5
12
|
### [5.3.2](https://github.com/kevinand11/equipped/compare/v5.3.1...v5.3.2) (2026-06-20)
|
|
6
13
|
|
|
7
14
|
### [5.3.1](https://github.com/kevinand11/equipped/compare/v5.3.0...v5.3.1) (2026-06-19)
|
|
@@ -25,6 +25,7 @@ __export(errors_exports, {
|
|
|
25
25
|
NotAuthenticatedError: () => NotAuthenticatedError,
|
|
26
26
|
NotAuthorizedError: () => NotAuthorizedError,
|
|
27
27
|
NotFoundError: () => NotFoundError,
|
|
28
|
+
PreconditionRequiredError: () => PreconditionRequiredError,
|
|
28
29
|
RequestError: () => RequestError,
|
|
29
30
|
TokenExpired: () => TokenExpired,
|
|
30
31
|
ValidationError: () => ValidationError
|
|
@@ -59,6 +60,7 @@ var StatusCodes = {
|
|
|
59
60
|
NotAuthorized: 403,
|
|
60
61
|
NotFound: 404,
|
|
61
62
|
ValidationError: 422,
|
|
63
|
+
PreconditionRequired: 428,
|
|
62
64
|
TooManyRequests: 429,
|
|
63
65
|
TokenExpired: 461
|
|
64
66
|
};
|
|
@@ -95,6 +97,14 @@ var NotFoundError = class extends RequestError {
|
|
|
95
97
|
}
|
|
96
98
|
};
|
|
97
99
|
|
|
100
|
+
// src/errors/types/preconditionRequiredError.ts
|
|
101
|
+
var PreconditionRequiredError = class extends RequestError {
|
|
102
|
+
statusCode = StatusCodes.PreconditionRequired;
|
|
103
|
+
constructor(message = "Precondition required", cause) {
|
|
104
|
+
super(message, [{ message }], cause);
|
|
105
|
+
}
|
|
106
|
+
};
|
|
107
|
+
|
|
98
108
|
// src/errors/types/tokenExpired.ts
|
|
99
109
|
var TokenExpired = class extends RequestError {
|
|
100
110
|
statusCode = StatusCodes.TokenExpired;
|
|
@@ -121,6 +131,7 @@ var ValidationError = class extends RequestError {
|
|
|
121
131
|
NotAuthenticatedError,
|
|
122
132
|
NotAuthorizedError,
|
|
123
133
|
NotFoundError,
|
|
134
|
+
PreconditionRequiredError,
|
|
124
135
|
RequestError,
|
|
125
136
|
TokenExpired,
|
|
126
137
|
ValidationError
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/errors/index.ts","../../../src/errors/equippedError.ts","../../../src/errors/requestError.ts","../../../src/server/types.ts","../../../src/errors/types/badRequestError.ts","../../../src/errors/types/notAuthenticatedError.ts","../../../src/errors/types/notAuthorizedError.ts","../../../src/errors/types/notFoundError.ts","../../../src/errors/types/tokenExpired.ts","../../../src/errors/types/validationError.ts"],"sourcesContent":["export * from './equippedError'\nexport * from './requestError'\nexport * from './types/badRequestError'\nexport * from './types/notAuthenticatedError'\nexport * from './types/notAuthorizedError'\nexport * from './types/notFoundError'\nexport * from './types/tokenExpired'\nexport * from './types/validationError'\n","export class EquippedError extends Error {\n\tconstructor(\n\t\tpublic readonly message: string,\n\t\tpublic readonly context: Record<string, unknown>,\n\t\tpublic readonly cause?: unknown,\n\t) {\n\t\tsuper(message, { cause })\n\t}\n}\n","import type { StatusCodesEnum } from '../server'\nimport { EquippedError } from './equippedError'\n\nexport abstract class RequestError extends EquippedError {\n\tabstract readonly statusCode: StatusCodesEnum\n\n\tprotected constructor(\n\t\tpublic readonly message: string,\n\t\tpublic readonly serializedErrors: { message: string; field?: string }[],\n\t\tcause?: unknown,\n\t) {\n\t\tsuper(message, { serializedErrors }, cause)\n\t}\n}\n","import type { IsInTypeList, Pipe, PipeInput, PipeOutput, Prettify } from 'valleyed'\n\nimport type { RequestError } from '../errors'\nimport type { Enum } from '../types'\nimport type { Request, Response } from './requests'\n\nexport const Methods = {\n\thead: 'head',\n\tget: 'get',\n\tpost: 'post',\n\tput: 'put',\n\tpatch: 'patch',\n\tdelete: 'delete',\n\toptions: 'options',\n} as const\n\nexport const StatusCodes = {\n\tOk: 200,\n\tFound: 302,\n\tBadRequest: 400,\n\tNotAuthenticated: 401,\n\tNotAuthorized: 403,\n\tNotFound: 404,\n\tValidationError: 422,\n\tTooManyRequests: 429,\n\tTokenExpired: 461,\n} as const\n\nexport type MethodsEnum = Enum<typeof Methods>\nexport type StatusCodesEnum = Enum<typeof StatusCodes>\n\nexport type DefaultHeaders = Record<string, ArrayOrValue<string>>\nexport type DefaultCookies = Record<string, string | undefined>\n\ntype ArrayOrValue<T> = T | T[] | undefined\n\nexport type IncomingFile = {\n\tname: string\n\ttype: string\n\tsize: number\n\tisTruncated: boolean\n\tdata: Buffer\n\tduration: number\n}\n\nexport type RouteDef = {\n\tparams?: Pipe<Record<string, ArrayOrValue<string>>, Record<string, ArrayOrValue<string>>>\n\tquery?: Pipe<Record<string, ArrayOrValue<unknown>>, Record<string, ArrayOrValue<unknown>>>\n\theaders?: Pipe<DefaultHeaders, DefaultHeaders>\n\tcookies?: Pipe<DefaultCookies, DefaultCookies>\n\tbody?: Pipe<Record<string, unknown>, Record<string, unknown>>\n\tresponse?: Pipe<unknown, unknown>\n\tresponseHeaders?: Pipe<DefaultHeaders, DefaultHeaders>\n\tresponseCookies?: Pipe<DefaultCookies, DefaultCookies>\n\tdefaultStatusCode?: StatusCodesEnum\n\tdefaultContentType?: string\n}\n\ntype RouteGroup = { name: string; description?: string }\ntype HandlerSetup<T extends RouteDef> = (route: Route<T>) => void\n\nexport type RouteConfig<T extends RouteDef> = {\n\tmiddlewares?: ReturnType<typeof makeMiddleware<RouteDef>>[]\n\tresponseMiddlewares?: ReturnType<typeof makeResponseMiddleware<RouteDef>>[]\n\tonError?: ReturnType<typeof makeErrorMiddleware<RouteDef>>\n\tgroups?: (RouteGroup | RouteGroup['name'])[]\n\ttitle?: string\n\tdescriptions?: string[]\n\tsecurity?: Record<string, string[]>[]\n\tschema?: T\n\thide?: boolean\n}\n\nexport type RouterConfig<T extends RouteDef> = RouteConfig<T> & { path: string }\nexport type Route<T extends RouteDef> = RouteConfig<T> & {\n\tpath: string\n\tmethod: MethodsEnum\n\thandler: RouteDefHandler<T>\n}\n\ntype GetApiPart<T extends RouteDef, K extends keyof RouteDef> = NonNullable<IsInTypeList<T[K], [unknown]> extends true ? RouteDef[K] : T[K]>\n\ntype ArePipes<A, B> = A extends Pipe<any, any> ? (B extends Pipe<any, any> ? true : false) : false\ntype Compare<K extends keyof RouteDef, A, B> =\n\tIsInTypeList<B, [unknown]> extends true\n\t\t? A\n\t\t: IsInTypeList<A, [unknown]> extends true\n\t\t\t? B\n\t\t\t: K extends `default${string}` | 'context'\n\t\t\t\t? B\n\t\t\t\t: ArePipes<A, B> extends true\n\t\t\t\t\t? Pipe<PipeInput<A> & PipeInput<B>, PipeOutput<A> & PipeOutput<B>>\n\t\t\t\t\t: B\n\nexport type MergeRouteDefs<A extends RouteDef, B extends RouteDef> = {\n\t[K in keyof RouteDef]: Compare<K, A[K], B[K]>\n}\n\nexport type RouteDefToReqRes<T extends RouteDef> = Prettify<{\n\tbody: PipeOutput<GetApiPart<T, 'body'>>\n\tparams: PipeOutput<GetApiPart<T, 'params'>>\n\trequestHeaders: PipeOutput<GetApiPart<T, 'headers'>>\n\trequestCookies: PipeOutput<GetApiPart<T, 'cookies'>>\n\tquery: PipeOutput<GetApiPart<T, 'query'>>\n\tresponse: PipeOutput<GetApiPart<T, 'response'>>\n\tresponseHeaders: PipeOutput<GetApiPart<T, 'responseHeaders'>>\n\tresponseCookies: PipeOutput<GetApiPart<T, 'responseCookies'>>\n\tstatusCode: GetApiPart<T, 'defaultStatusCode'>\n\tcontentType: GetApiPart<T, 'defaultContentType'>\n}>\n\ntype Awaitable<T> = Promise<T> | T\ntype Res<T extends RouteDefToReqRes<any>> = Awaitable<\n\tIsInTypeList<T['statusCode'], [StatusCodesEnum, 200]> extends true\n\t\t? IsInTypeList<T['responseHeaders'], [DefaultHeaders]> extends true\n\t\t\t? IsInTypeList<T['responseCookies'], [DefaultCookies]> extends true\n\t\t\t\t? Response<T> | T['response']\n\t\t\t\t: Response<T>\n\t\t\t: Response<T>\n\t\t: Response<T>\n>\nexport type RouteDefHandler<Def extends RouteDef> = (req: Request<RouteDefToReqRes<Def>>) => Res<RouteDefToReqRes<Def>>\ntype RouteMiddlewareHandler<_Def extends RouteDef> = (req: Request<RouteDefToReqRes<RouteDef>>) => Awaitable<void>\ntype RouteResponseMiddlewareHandler<_Def extends RouteDef> = (\n\treq: Request<RouteDefToReqRes<RouteDef>>,\n\tres: Response<RouteDefToReqRes<RouteDef>>,\n) => Awaitable<void>\ntype ErrorHandler<Def extends RouteDef> = (\n\treq: Request<RouteDefToReqRes<Def>>,\n\terr: Error,\n) => Res<\n\tOmit<RouteDefToReqRes<Def>, 'response' | 'statusCode' | 'responseHeaders' | 'responseCookies'> & {\n\t\tresponse: RequestError['serializedErrors']\n\t\tstatusCode: RequestError['statusCode']\n\t\tresponseHeaders: DefaultHeaders\n\t\tresponseCookies: DefaultCookies\n\t}\n>\n\nfunction makeMiddlewareHandler<Cb extends Function, T extends RouteDef>(cb: Cb, onSetup?: HandlerSetup<T>) {\n\treturn { cb, onSetup }\n}\n\nexport const makeMiddleware = <Def extends RouteDef>(...args: Parameters<typeof makeMiddlewareHandler<RouteMiddlewareHandler<Def>, Def>>) =>\n\tmakeMiddlewareHandler(...args)\nexport const makeResponseMiddleware = <Def extends RouteDef>(\n\t...args: Parameters<typeof makeMiddlewareHandler<RouteResponseMiddlewareHandler<Def>, Def>>\n) => makeMiddlewareHandler(...args)\nexport const makeErrorMiddleware = <Def extends RouteDef>(...args: Parameters<typeof makeMiddlewareHandler<ErrorHandler<Def>, Def>>) =>\n\tmakeMiddlewareHandler(...args)\n","import { StatusCodes } from '../../server'\nimport { RequestError } from '../requestError'\n\nexport class BadRequestError extends RequestError {\n\tstatusCode = StatusCodes.BadRequest\n\n\tconstructor(message: string, cause?: unknown) {\n\t\tsuper(message, [{ message }], cause)\n\t}\n}\n","import { StatusCodes } from '../../server'\nimport { RequestError } from '../requestError'\n\nexport class NotAuthenticatedError extends RequestError {\n\tstatusCode = StatusCodes.NotAuthenticated\n\n\tconstructor(message = 'Not authenticated', cause?: unknown) {\n\t\tsuper(message, [{ message }], cause)\n\t}\n}\n","import { StatusCodes } from '../../server'\nimport { RequestError } from '../requestError'\n\nexport class NotAuthorizedError extends RequestError {\n\tstatusCode = StatusCodes.NotAuthorized\n\n\tconstructor(message = 'Not authorized', cause?: unknown) {\n\t\tsuper(message, [{ message }], cause)\n\t}\n}\n","import { StatusCodes } from '../../server'\nimport { RequestError } from '../requestError'\n\nexport class NotFoundError extends RequestError {\n\tstatusCode = StatusCodes.NotFound\n\n\tconstructor(message = 'Not found', cause?: unknown) {\n\t\tsuper(message, [{ message }], cause)\n\t}\n}\n","import { StatusCodes } from '../../server'\nimport { RequestError } from '../requestError'\n\nexport class TokenExpired extends RequestError {\n\tstatusCode = StatusCodes.TokenExpired\n\n\tconstructor(message = 'Token expired', cause?: unknown) {\n\t\tsuper(message, [{ message }], cause)\n\t}\n}\n","import { StatusCodes } from '../../server'\nimport { RequestError } from '../requestError'\n\ntype ValidError = {\n\tmessages: string[]\n\tfield: string\n}\n\nexport class ValidationError extends RequestError {\n\tstatusCode = StatusCodes.ValidationError\n\n\tconstructor(errors: ValidError[], cause?: unknown) {\n\t\tsuper(\n\t\t\t'Unprocessable Entity',\n\t\t\terrors.flatMap(({ field, messages }) => messages.map((message) => ({ message, field }))),\n\t\t\tcause,\n\t\t)\n\t}\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;ACAO,IAAM,gBAAN,cAA4B,MAAM;AAAA,EACxC,YACiB,SACA,SACA,OACf;AACD,UAAM,SAAS,EAAE,MAAM,CAAC;AAJR;AACA;AACA;AAAA,EAGjB;AACD;;;ACLO,IAAe,eAAf,cAAoC,cAAc;AAAA,EAG9C,YACO,SACA,kBAChB,OACC;AACD,UAAM,SAAS,EAAE,iBAAiB,GAAG,KAAK;AAJ1B;AACA;AAAA,EAIjB;AACD;;;ACGO,IAAM,cAAc;AAAA,EAC1B,IAAI;AAAA,EACJ,OAAO;AAAA,EACP,YAAY;AAAA,EACZ,kBAAkB;AAAA,EAClB,eAAe;AAAA,EACf,UAAU;AAAA,EACV,iBAAiB;AAAA,EACjB,iBAAiB;AAAA,EACjB,cAAc;AACf;;;ACvBO,IAAM,kBAAN,cAA8B,aAAa;AAAA,EACjD,aAAa,YAAY;AAAA,EAEzB,YAAY,SAAiB,OAAiB;AAC7C,UAAM,SAAS,CAAC,EAAE,QAAQ,CAAC,GAAG,KAAK;AAAA,EACpC;AACD;;;ACNO,IAAM,wBAAN,cAAoC,aAAa;AAAA,EACvD,aAAa,YAAY;AAAA,EAEzB,YAAY,UAAU,qBAAqB,OAAiB;AAC3D,UAAM,SAAS,CAAC,EAAE,QAAQ,CAAC,GAAG,KAAK;AAAA,EACpC;AACD;;;ACNO,IAAM,qBAAN,cAAiC,aAAa;AAAA,EACpD,aAAa,YAAY;AAAA,EAEzB,YAAY,UAAU,kBAAkB,OAAiB;AACxD,UAAM,SAAS,CAAC,EAAE,QAAQ,CAAC,GAAG,KAAK;AAAA,EACpC;AACD;;;ACNO,IAAM,gBAAN,cAA4B,aAAa;AAAA,EAC/C,aAAa,YAAY;AAAA,EAEzB,YAAY,UAAU,aAAa,OAAiB;AACnD,UAAM,SAAS,CAAC,EAAE,QAAQ,CAAC,GAAG,KAAK;AAAA,EACpC;AACD;;;ACNO,IAAM,eAAN,cAA2B,aAAa;AAAA,EAC9C,aAAa,YAAY;AAAA,EAEzB,YAAY,UAAU,iBAAiB,OAAiB;AACvD,UAAM,SAAS,CAAC,EAAE,QAAQ,CAAC,GAAG,KAAK;AAAA,EACpC;AACD;;;ACDO,IAAM,kBAAN,cAA8B,aAAa;AAAA,EACjD,aAAa,YAAY;AAAA,EAEzB,YAAY,QAAsB,OAAiB;AAClD;AAAA,MACC;AAAA,MACA,OAAO,QAAQ,CAAC,EAAE,OAAO,SAAS,MAAM,SAAS,IAAI,CAAC,aAAa,EAAE,SAAS,MAAM,EAAE,CAAC;AAAA,MACvF;AAAA,IACD;AAAA,EACD;AACD;","names":[]}
|
|
1
|
+
{"version":3,"sources":["../../../src/errors/index.ts","../../../src/errors/equippedError.ts","../../../src/errors/requestError.ts","../../../src/server/types.ts","../../../src/errors/types/badRequestError.ts","../../../src/errors/types/notAuthenticatedError.ts","../../../src/errors/types/notAuthorizedError.ts","../../../src/errors/types/notFoundError.ts","../../../src/errors/types/preconditionRequiredError.ts","../../../src/errors/types/tokenExpired.ts","../../../src/errors/types/validationError.ts"],"sourcesContent":["export * from './equippedError'\nexport * from './requestError'\nexport * from './types/badRequestError'\nexport * from './types/notAuthenticatedError'\nexport * from './types/notAuthorizedError'\nexport * from './types/notFoundError'\nexport * from './types/preconditionRequiredError'\nexport * from './types/tokenExpired'\nexport * from './types/validationError'\n","export class EquippedError extends Error {\n\tconstructor(\n\t\tpublic readonly message: string,\n\t\tpublic readonly context: Record<string, unknown>,\n\t\tpublic readonly cause?: unknown,\n\t) {\n\t\tsuper(message, { cause })\n\t}\n}\n","import type { StatusCodesEnum } from '../server'\nimport { EquippedError } from './equippedError'\n\nexport abstract class RequestError extends EquippedError {\n\tabstract readonly statusCode: StatusCodesEnum\n\n\tprotected constructor(\n\t\tpublic readonly message: string,\n\t\tpublic readonly serializedErrors: { message: string; field?: string }[],\n\t\tcause?: unknown,\n\t) {\n\t\tsuper(message, { serializedErrors }, cause)\n\t}\n}\n","import type { IsInTypeList, Pipe, PipeInput, PipeOutput, Prettify } from 'valleyed'\n\nimport type { RequestError } from '../errors'\nimport type { Enum } from '../types'\nimport type { Request, Response } from './requests'\n\nexport const Methods = {\n\thead: 'head',\n\tget: 'get',\n\tpost: 'post',\n\tput: 'put',\n\tpatch: 'patch',\n\tdelete: 'delete',\n\toptions: 'options',\n} as const\n\nexport const StatusCodes = {\n\tOk: 200,\n\tFound: 302,\n\tBadRequest: 400,\n\tNotAuthenticated: 401,\n\tNotAuthorized: 403,\n\tNotFound: 404,\n\tValidationError: 422,\n\tPreconditionRequired: 428,\n\tTooManyRequests: 429,\n\tTokenExpired: 461,\n} as const\n\nexport type MethodsEnum = Enum<typeof Methods>\nexport type StatusCodesEnum = Enum<typeof StatusCodes>\n\nexport type DefaultHeaders = Record<string, ArrayOrValue<string>>\nexport type DefaultCookies = Record<string, string | undefined>\n\ntype ArrayOrValue<T> = T | T[] | undefined\n\nexport type IncomingFile = {\n\tname: string\n\ttype: string\n\tsize: number\n\tisTruncated: boolean\n\tdata: Buffer\n\tduration: number\n}\n\nexport type RouteDef = {\n\tparams?: Pipe<Record<string, ArrayOrValue<string>>, Record<string, ArrayOrValue<string>>>\n\tquery?: Pipe<Record<string, ArrayOrValue<unknown>>, Record<string, ArrayOrValue<unknown>>>\n\theaders?: Pipe<DefaultHeaders, DefaultHeaders>\n\tcookies?: Pipe<DefaultCookies, DefaultCookies>\n\tbody?: Pipe<Record<string, unknown>, Record<string, unknown>>\n\tresponse?: Pipe<unknown, unknown>\n\tresponseHeaders?: Pipe<DefaultHeaders, DefaultHeaders>\n\tresponseCookies?: Pipe<DefaultCookies, DefaultCookies>\n\tdefaultStatusCode?: StatusCodesEnum\n\tdefaultContentType?: string\n}\n\ntype RouteGroup = { name: string; description?: string }\ntype HandlerSetup<T extends RouteDef> = (route: Route<T>) => void\n\nexport type RouteConfig<T extends RouteDef> = {\n\tmiddlewares?: ReturnType<typeof makeMiddleware<RouteDef>>[]\n\tresponseMiddlewares?: ReturnType<typeof makeResponseMiddleware<RouteDef>>[]\n\tonError?: ReturnType<typeof makeErrorMiddleware<RouteDef>>\n\tgroups?: (RouteGroup | RouteGroup['name'])[]\n\ttitle?: string\n\tdescriptions?: string[]\n\tsecurity?: Record<string, string[]>[]\n\tschema?: T\n\thide?: boolean\n}\n\nexport type RouterConfig<T extends RouteDef> = RouteConfig<T> & { path: string }\nexport type Route<T extends RouteDef> = RouteConfig<T> & {\n\tpath: string\n\tmethod: MethodsEnum\n\thandler: RouteDefHandler<T>\n}\n\ntype GetApiPart<T extends RouteDef, K extends keyof RouteDef> = NonNullable<IsInTypeList<T[K], [unknown]> extends true ? RouteDef[K] : T[K]>\n\ntype ArePipes<A, B> = A extends Pipe<any, any> ? (B extends Pipe<any, any> ? true : false) : false\ntype Compare<K extends keyof RouteDef, A, B> =\n\tIsInTypeList<B, [unknown]> extends true\n\t\t? A\n\t\t: IsInTypeList<A, [unknown]> extends true\n\t\t\t? B\n\t\t\t: K extends `default${string}` | 'context'\n\t\t\t\t? B\n\t\t\t\t: ArePipes<A, B> extends true\n\t\t\t\t\t? Pipe<PipeInput<A> & PipeInput<B>, PipeOutput<A> & PipeOutput<B>>\n\t\t\t\t\t: B\n\nexport type MergeRouteDefs<A extends RouteDef, B extends RouteDef> = {\n\t[K in keyof RouteDef]: Compare<K, A[K], B[K]>\n}\n\nexport type RouteDefToReqRes<T extends RouteDef> = Prettify<{\n\tbody: PipeOutput<GetApiPart<T, 'body'>>\n\tparams: PipeOutput<GetApiPart<T, 'params'>>\n\trequestHeaders: PipeOutput<GetApiPart<T, 'headers'>>\n\trequestCookies: PipeOutput<GetApiPart<T, 'cookies'>>\n\tquery: PipeOutput<GetApiPart<T, 'query'>>\n\tresponse: PipeOutput<GetApiPart<T, 'response'>>\n\tresponseHeaders: PipeOutput<GetApiPart<T, 'responseHeaders'>>\n\tresponseCookies: PipeOutput<GetApiPart<T, 'responseCookies'>>\n\tstatusCode: GetApiPart<T, 'defaultStatusCode'>\n\tcontentType: GetApiPart<T, 'defaultContentType'>\n}>\n\ntype Awaitable<T> = Promise<T> | T\ntype Res<T extends RouteDefToReqRes<any>> = Awaitable<\n\tIsInTypeList<T['statusCode'], [StatusCodesEnum, 200]> extends true\n\t\t? IsInTypeList<T['responseHeaders'], [DefaultHeaders]> extends true\n\t\t\t? IsInTypeList<T['responseCookies'], [DefaultCookies]> extends true\n\t\t\t\t? Response<T> | T['response']\n\t\t\t\t: Response<T>\n\t\t\t: Response<T>\n\t\t: Response<T>\n>\nexport type RouteDefHandler<Def extends RouteDef> = (req: Request<RouteDefToReqRes<Def>>) => Res<RouteDefToReqRes<Def>>\ntype RouteMiddlewareHandler<_Def extends RouteDef> = (req: Request<RouteDefToReqRes<RouteDef>>) => Awaitable<void>\ntype RouteResponseMiddlewareHandler<_Def extends RouteDef> = (\n\treq: Request<RouteDefToReqRes<RouteDef>>,\n\tres: Response<RouteDefToReqRes<RouteDef>>,\n) => Awaitable<void>\ntype ErrorHandler<Def extends RouteDef> = (\n\treq: Request<RouteDefToReqRes<Def>>,\n\terr: Error,\n) => Res<\n\tOmit<RouteDefToReqRes<Def>, 'response' | 'statusCode' | 'responseHeaders' | 'responseCookies'> & {\n\t\tresponse: RequestError['serializedErrors']\n\t\tstatusCode: RequestError['statusCode']\n\t\tresponseHeaders: DefaultHeaders\n\t\tresponseCookies: DefaultCookies\n\t}\n>\n\nfunction makeMiddlewareHandler<Cb extends Function, T extends RouteDef>(cb: Cb, onSetup?: HandlerSetup<T>) {\n\treturn { cb, onSetup }\n}\n\nexport const makeMiddleware = <Def extends RouteDef>(...args: Parameters<typeof makeMiddlewareHandler<RouteMiddlewareHandler<Def>, Def>>) =>\n\tmakeMiddlewareHandler(...args)\nexport const makeResponseMiddleware = <Def extends RouteDef>(\n\t...args: Parameters<typeof makeMiddlewareHandler<RouteResponseMiddlewareHandler<Def>, Def>>\n) => makeMiddlewareHandler(...args)\nexport const makeErrorMiddleware = <Def extends RouteDef>(...args: Parameters<typeof makeMiddlewareHandler<ErrorHandler<Def>, Def>>) =>\n\tmakeMiddlewareHandler(...args)\n","import { StatusCodes } from '../../server'\nimport { RequestError } from '../requestError'\n\nexport class BadRequestError extends RequestError {\n\tstatusCode = StatusCodes.BadRequest\n\n\tconstructor(message: string, cause?: unknown) {\n\t\tsuper(message, [{ message }], cause)\n\t}\n}\n","import { StatusCodes } from '../../server'\nimport { RequestError } from '../requestError'\n\nexport class NotAuthenticatedError extends RequestError {\n\tstatusCode = StatusCodes.NotAuthenticated\n\n\tconstructor(message = 'Not authenticated', cause?: unknown) {\n\t\tsuper(message, [{ message }], cause)\n\t}\n}\n","import { StatusCodes } from '../../server'\nimport { RequestError } from '../requestError'\n\nexport class NotAuthorizedError extends RequestError {\n\tstatusCode = StatusCodes.NotAuthorized\n\n\tconstructor(message = 'Not authorized', cause?: unknown) {\n\t\tsuper(message, [{ message }], cause)\n\t}\n}\n","import { StatusCodes } from '../../server'\nimport { RequestError } from '../requestError'\n\nexport class NotFoundError extends RequestError {\n\tstatusCode = StatusCodes.NotFound\n\n\tconstructor(message = 'Not found', cause?: unknown) {\n\t\tsuper(message, [{ message }], cause)\n\t}\n}\n","import { StatusCodes } from '../../server'\nimport { RequestError } from '../requestError'\n\nexport class PreconditionRequiredError extends RequestError {\n\tstatusCode = StatusCodes.PreconditionRequired\n\n\tconstructor(message = 'Precondition required', cause?: unknown) {\n\t\tsuper(message, [{ message }], cause)\n\t}\n}\n","import { StatusCodes } from '../../server'\nimport { RequestError } from '../requestError'\n\nexport class TokenExpired extends RequestError {\n\tstatusCode = StatusCodes.TokenExpired\n\n\tconstructor(message = 'Token expired', cause?: unknown) {\n\t\tsuper(message, [{ message }], cause)\n\t}\n}\n","import { StatusCodes } from '../../server'\nimport { RequestError } from '../requestError'\n\ntype ValidError = {\n\tmessages: string[]\n\tfield: string\n}\n\nexport class ValidationError extends RequestError {\n\tstatusCode = StatusCodes.ValidationError\n\n\tconstructor(errors: ValidError[], cause?: unknown) {\n\t\tsuper(\n\t\t\t'Unprocessable Entity',\n\t\t\terrors.flatMap(({ field, messages }) => messages.map((message) => ({ message, field }))),\n\t\t\tcause,\n\t\t)\n\t}\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;ACAO,IAAM,gBAAN,cAA4B,MAAM;AAAA,EACxC,YACiB,SACA,SACA,OACf;AACD,UAAM,SAAS,EAAE,MAAM,CAAC;AAJR;AACA;AACA;AAAA,EAGjB;AACD;;;ACLO,IAAe,eAAf,cAAoC,cAAc;AAAA,EAG9C,YACO,SACA,kBAChB,OACC;AACD,UAAM,SAAS,EAAE,iBAAiB,GAAG,KAAK;AAJ1B;AACA;AAAA,EAIjB;AACD;;;ACGO,IAAM,cAAc;AAAA,EAC1B,IAAI;AAAA,EACJ,OAAO;AAAA,EACP,YAAY;AAAA,EACZ,kBAAkB;AAAA,EAClB,eAAe;AAAA,EACf,UAAU;AAAA,EACV,iBAAiB;AAAA,EACjB,sBAAsB;AAAA,EACtB,iBAAiB;AAAA,EACjB,cAAc;AACf;;;ACxBO,IAAM,kBAAN,cAA8B,aAAa;AAAA,EACjD,aAAa,YAAY;AAAA,EAEzB,YAAY,SAAiB,OAAiB;AAC7C,UAAM,SAAS,CAAC,EAAE,QAAQ,CAAC,GAAG,KAAK;AAAA,EACpC;AACD;;;ACNO,IAAM,wBAAN,cAAoC,aAAa;AAAA,EACvD,aAAa,YAAY;AAAA,EAEzB,YAAY,UAAU,qBAAqB,OAAiB;AAC3D,UAAM,SAAS,CAAC,EAAE,QAAQ,CAAC,GAAG,KAAK;AAAA,EACpC;AACD;;;ACNO,IAAM,qBAAN,cAAiC,aAAa;AAAA,EACpD,aAAa,YAAY;AAAA,EAEzB,YAAY,UAAU,kBAAkB,OAAiB;AACxD,UAAM,SAAS,CAAC,EAAE,QAAQ,CAAC,GAAG,KAAK;AAAA,EACpC;AACD;;;ACNO,IAAM,gBAAN,cAA4B,aAAa;AAAA,EAC/C,aAAa,YAAY;AAAA,EAEzB,YAAY,UAAU,aAAa,OAAiB;AACnD,UAAM,SAAS,CAAC,EAAE,QAAQ,CAAC,GAAG,KAAK;AAAA,EACpC;AACD;;;ACNO,IAAM,4BAAN,cAAwC,aAAa;AAAA,EAC3D,aAAa,YAAY;AAAA,EAEzB,YAAY,UAAU,yBAAyB,OAAiB;AAC/D,UAAM,SAAS,CAAC,EAAE,QAAQ,CAAC,GAAG,KAAK;AAAA,EACpC;AACD;;;ACNO,IAAM,eAAN,cAA2B,aAAa;AAAA,EAC9C,aAAa,YAAY;AAAA,EAEzB,YAAY,UAAU,iBAAiB,OAAiB;AACvD,UAAM,SAAS,CAAC,EAAE,QAAQ,CAAC,GAAG,KAAK;AAAA,EACpC;AACD;;;ACDO,IAAM,kBAAN,cAA8B,aAAa;AAAA,EACjD,aAAa,YAAY;AAAA,EAEzB,YAAY,QAAsB,OAAiB;AAClD;AAAA,MACC;AAAA,MACA,OAAO,QAAQ,CAAC,EAAE,OAAO,SAAS,MAAM,SAAS,IAAI,CAAC,aAAa,EAAE,SAAS,MAAM,EAAE,CAAC;AAAA,MACvF;AAAA,IACD;AAAA,EACD;AACD;","names":[]}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";var a=Object.defineProperty;var
|
|
1
|
+
"use strict";var a=Object.defineProperty;var c=Object.getOwnPropertyDescriptor;var D=Object.getOwnPropertyNames;var T=Object.prototype.hasOwnProperty;var C=(r,e)=>{for(var t in e)a(r,t,{get:e[t],enumerable:!0})},k=(r,e,t,u)=>{if(e&&typeof e=="object"||typeof e=="function")for(let n of D(e))!T.call(r,n)&&n!==t&&a(r,n,{get:()=>e[n],enumerable:!(u=c(e,n))||u.enumerable});return r};var P=r=>k(a({},"__esModule",{value:!0}),r);var w={};C(w,{BadRequestError:()=>d,EquippedError:()=>p,NotAuthenticatedError:()=>i,NotAuthorizedError:()=>f,NotFoundError:()=>R,PreconditionRequiredError:()=>l,RequestError:()=>o,TokenExpired:()=>m,ValidationError:()=>y});module.exports=P(w);var p=class extends Error{constructor(t,u,n){super(t,{cause:n});this.message=t;this.context=u;this.cause=n}};var o=class extends p{constructor(t,u,n){super(t,{serializedErrors:u},n);this.message=t;this.serializedErrors=u}};var s={Ok:200,Found:302,BadRequest:400,NotAuthenticated:401,NotAuthorized:403,NotFound:404,ValidationError:422,PreconditionRequired:428,TooManyRequests:429,TokenExpired:461};var d=class extends o{statusCode=s.BadRequest;constructor(e,t){super(e,[{message:e}],t)}};var i=class extends o{statusCode=s.NotAuthenticated;constructor(e="Not authenticated",t){super(e,[{message:e}],t)}};var f=class extends o{statusCode=s.NotAuthorized;constructor(e="Not authorized",t){super(e,[{message:e}],t)}};var R=class extends o{statusCode=s.NotFound;constructor(e="Not found",t){super(e,[{message:e}],t)}};var l=class extends o{statusCode=s.PreconditionRequired;constructor(e="Precondition required",t){super(e,[{message:e}],t)}};var m=class extends o{statusCode=s.TokenExpired;constructor(e="Token expired",t){super(e,[{message:e}],t)}};var y=class extends o{statusCode=s.ValidationError;constructor(e,t){super("Unprocessable Entity",e.flatMap(({field:u,messages:n})=>n.map(x=>({message:x,field:u}))),t)}};0&&(module.exports={BadRequestError,EquippedError,NotAuthenticatedError,NotAuthorizedError,NotFoundError,PreconditionRequiredError,RequestError,TokenExpired,ValidationError});
|
|
2
2
|
//# sourceMappingURL=index.min.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/errors/index.ts","../../../src/errors/equippedError.ts","../../../src/errors/requestError.ts","../../../src/server/types.ts","../../../src/errors/types/badRequestError.ts","../../../src/errors/types/notAuthenticatedError.ts","../../../src/errors/types/notAuthorizedError.ts","../../../src/errors/types/notFoundError.ts","../../../src/errors/types/tokenExpired.ts","../../../src/errors/types/validationError.ts"],"sourcesContent":["export * from './equippedError'\nexport * from './requestError'\nexport * from './types/badRequestError'\nexport * from './types/notAuthenticatedError'\nexport * from './types/notAuthorizedError'\nexport * from './types/notFoundError'\nexport * from './types/tokenExpired'\nexport * from './types/validationError'\n","export class EquippedError extends Error {\n\tconstructor(\n\t\tpublic readonly message: string,\n\t\tpublic readonly context: Record<string, unknown>,\n\t\tpublic readonly cause?: unknown,\n\t) {\n\t\tsuper(message, { cause })\n\t}\n}\n","import type { StatusCodesEnum } from '../server'\nimport { EquippedError } from './equippedError'\n\nexport abstract class RequestError extends EquippedError {\n\tabstract readonly statusCode: StatusCodesEnum\n\n\tprotected constructor(\n\t\tpublic readonly message: string,\n\t\tpublic readonly serializedErrors: { message: string; field?: string }[],\n\t\tcause?: unknown,\n\t) {\n\t\tsuper(message, { serializedErrors }, cause)\n\t}\n}\n","import type { IsInTypeList, Pipe, PipeInput, PipeOutput, Prettify } from 'valleyed'\n\nimport type { RequestError } from '../errors'\nimport type { Enum } from '../types'\nimport type { Request, Response } from './requests'\n\nexport const Methods = {\n\thead: 'head',\n\tget: 'get',\n\tpost: 'post',\n\tput: 'put',\n\tpatch: 'patch',\n\tdelete: 'delete',\n\toptions: 'options',\n} as const\n\nexport const StatusCodes = {\n\tOk: 200,\n\tFound: 302,\n\tBadRequest: 400,\n\tNotAuthenticated: 401,\n\tNotAuthorized: 403,\n\tNotFound: 404,\n\tValidationError: 422,\n\tTooManyRequests: 429,\n\tTokenExpired: 461,\n} as const\n\nexport type MethodsEnum = Enum<typeof Methods>\nexport type StatusCodesEnum = Enum<typeof StatusCodes>\n\nexport type DefaultHeaders = Record<string, ArrayOrValue<string>>\nexport type DefaultCookies = Record<string, string | undefined>\n\ntype ArrayOrValue<T> = T | T[] | undefined\n\nexport type IncomingFile = {\n\tname: string\n\ttype: string\n\tsize: number\n\tisTruncated: boolean\n\tdata: Buffer\n\tduration: number\n}\n\nexport type RouteDef = {\n\tparams?: Pipe<Record<string, ArrayOrValue<string>>, Record<string, ArrayOrValue<string>>>\n\tquery?: Pipe<Record<string, ArrayOrValue<unknown>>, Record<string, ArrayOrValue<unknown>>>\n\theaders?: Pipe<DefaultHeaders, DefaultHeaders>\n\tcookies?: Pipe<DefaultCookies, DefaultCookies>\n\tbody?: Pipe<Record<string, unknown>, Record<string, unknown>>\n\tresponse?: Pipe<unknown, unknown>\n\tresponseHeaders?: Pipe<DefaultHeaders, DefaultHeaders>\n\tresponseCookies?: Pipe<DefaultCookies, DefaultCookies>\n\tdefaultStatusCode?: StatusCodesEnum\n\tdefaultContentType?: string\n}\n\ntype RouteGroup = { name: string; description?: string }\ntype HandlerSetup<T extends RouteDef> = (route: Route<T>) => void\n\nexport type RouteConfig<T extends RouteDef> = {\n\tmiddlewares?: ReturnType<typeof makeMiddleware<RouteDef>>[]\n\tresponseMiddlewares?: ReturnType<typeof makeResponseMiddleware<RouteDef>>[]\n\tonError?: ReturnType<typeof makeErrorMiddleware<RouteDef>>\n\tgroups?: (RouteGroup | RouteGroup['name'])[]\n\ttitle?: string\n\tdescriptions?: string[]\n\tsecurity?: Record<string, string[]>[]\n\tschema?: T\n\thide?: boolean\n}\n\nexport type RouterConfig<T extends RouteDef> = RouteConfig<T> & { path: string }\nexport type Route<T extends RouteDef> = RouteConfig<T> & {\n\tpath: string\n\tmethod: MethodsEnum\n\thandler: RouteDefHandler<T>\n}\n\ntype GetApiPart<T extends RouteDef, K extends keyof RouteDef> = NonNullable<IsInTypeList<T[K], [unknown]> extends true ? RouteDef[K] : T[K]>\n\ntype ArePipes<A, B> = A extends Pipe<any, any> ? (B extends Pipe<any, any> ? true : false) : false\ntype Compare<K extends keyof RouteDef, A, B> =\n\tIsInTypeList<B, [unknown]> extends true\n\t\t? A\n\t\t: IsInTypeList<A, [unknown]> extends true\n\t\t\t? B\n\t\t\t: K extends `default${string}` | 'context'\n\t\t\t\t? B\n\t\t\t\t: ArePipes<A, B> extends true\n\t\t\t\t\t? Pipe<PipeInput<A> & PipeInput<B>, PipeOutput<A> & PipeOutput<B>>\n\t\t\t\t\t: B\n\nexport type MergeRouteDefs<A extends RouteDef, B extends RouteDef> = {\n\t[K in keyof RouteDef]: Compare<K, A[K], B[K]>\n}\n\nexport type RouteDefToReqRes<T extends RouteDef> = Prettify<{\n\tbody: PipeOutput<GetApiPart<T, 'body'>>\n\tparams: PipeOutput<GetApiPart<T, 'params'>>\n\trequestHeaders: PipeOutput<GetApiPart<T, 'headers'>>\n\trequestCookies: PipeOutput<GetApiPart<T, 'cookies'>>\n\tquery: PipeOutput<GetApiPart<T, 'query'>>\n\tresponse: PipeOutput<GetApiPart<T, 'response'>>\n\tresponseHeaders: PipeOutput<GetApiPart<T, 'responseHeaders'>>\n\tresponseCookies: PipeOutput<GetApiPart<T, 'responseCookies'>>\n\tstatusCode: GetApiPart<T, 'defaultStatusCode'>\n\tcontentType: GetApiPart<T, 'defaultContentType'>\n}>\n\ntype Awaitable<T> = Promise<T> | T\ntype Res<T extends RouteDefToReqRes<any>> = Awaitable<\n\tIsInTypeList<T['statusCode'], [StatusCodesEnum, 200]> extends true\n\t\t? IsInTypeList<T['responseHeaders'], [DefaultHeaders]> extends true\n\t\t\t? IsInTypeList<T['responseCookies'], [DefaultCookies]> extends true\n\t\t\t\t? Response<T> | T['response']\n\t\t\t\t: Response<T>\n\t\t\t: Response<T>\n\t\t: Response<T>\n>\nexport type RouteDefHandler<Def extends RouteDef> = (req: Request<RouteDefToReqRes<Def>>) => Res<RouteDefToReqRes<Def>>\ntype RouteMiddlewareHandler<_Def extends RouteDef> = (req: Request<RouteDefToReqRes<RouteDef>>) => Awaitable<void>\ntype RouteResponseMiddlewareHandler<_Def extends RouteDef> = (\n\treq: Request<RouteDefToReqRes<RouteDef>>,\n\tres: Response<RouteDefToReqRes<RouteDef>>,\n) => Awaitable<void>\ntype ErrorHandler<Def extends RouteDef> = (\n\treq: Request<RouteDefToReqRes<Def>>,\n\terr: Error,\n) => Res<\n\tOmit<RouteDefToReqRes<Def>, 'response' | 'statusCode' | 'responseHeaders' | 'responseCookies'> & {\n\t\tresponse: RequestError['serializedErrors']\n\t\tstatusCode: RequestError['statusCode']\n\t\tresponseHeaders: DefaultHeaders\n\t\tresponseCookies: DefaultCookies\n\t}\n>\n\nfunction makeMiddlewareHandler<Cb extends Function, T extends RouteDef>(cb: Cb, onSetup?: HandlerSetup<T>) {\n\treturn { cb, onSetup }\n}\n\nexport const makeMiddleware = <Def extends RouteDef>(...args: Parameters<typeof makeMiddlewareHandler<RouteMiddlewareHandler<Def>, Def>>) =>\n\tmakeMiddlewareHandler(...args)\nexport const makeResponseMiddleware = <Def extends RouteDef>(\n\t...args: Parameters<typeof makeMiddlewareHandler<RouteResponseMiddlewareHandler<Def>, Def>>\n) => makeMiddlewareHandler(...args)\nexport const makeErrorMiddleware = <Def extends RouteDef>(...args: Parameters<typeof makeMiddlewareHandler<ErrorHandler<Def>, Def>>) =>\n\tmakeMiddlewareHandler(...args)\n","import { StatusCodes } from '../../server'\nimport { RequestError } from '../requestError'\n\nexport class BadRequestError extends RequestError {\n\tstatusCode = StatusCodes.BadRequest\n\n\tconstructor(message: string, cause?: unknown) {\n\t\tsuper(message, [{ message }], cause)\n\t}\n}\n","import { StatusCodes } from '../../server'\nimport { RequestError } from '../requestError'\n\nexport class NotAuthenticatedError extends RequestError {\n\tstatusCode = StatusCodes.NotAuthenticated\n\n\tconstructor(message = 'Not authenticated', cause?: unknown) {\n\t\tsuper(message, [{ message }], cause)\n\t}\n}\n","import { StatusCodes } from '../../server'\nimport { RequestError } from '../requestError'\n\nexport class NotAuthorizedError extends RequestError {\n\tstatusCode = StatusCodes.NotAuthorized\n\n\tconstructor(message = 'Not authorized', cause?: unknown) {\n\t\tsuper(message, [{ message }], cause)\n\t}\n}\n","import { StatusCodes } from '../../server'\nimport { RequestError } from '../requestError'\n\nexport class NotFoundError extends RequestError {\n\tstatusCode = StatusCodes.NotFound\n\n\tconstructor(message = 'Not found', cause?: unknown) {\n\t\tsuper(message, [{ message }], cause)\n\t}\n}\n","import { StatusCodes } from '../../server'\nimport { RequestError } from '../requestError'\n\nexport class TokenExpired extends RequestError {\n\tstatusCode = StatusCodes.TokenExpired\n\n\tconstructor(message = 'Token expired', cause?: unknown) {\n\t\tsuper(message, [{ message }], cause)\n\t}\n}\n","import { StatusCodes } from '../../server'\nimport { RequestError } from '../requestError'\n\ntype ValidError = {\n\tmessages: string[]\n\tfield: string\n}\n\nexport class ValidationError extends RequestError {\n\tstatusCode = StatusCodes.ValidationError\n\n\tconstructor(errors: ValidError[], cause?: unknown) {\n\t\tsuper(\n\t\t\t'Unprocessable Entity',\n\t\t\terrors.flatMap(({ field, messages }) => messages.map((message) => ({ message, field }))),\n\t\t\tcause,\n\t\t)\n\t}\n}\n"],"mappings":"yaAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,qBAAAE,EAAA,kBAAAC,EAAA,0BAAAC,EAAA,uBAAAC,EAAA,kBAAAC,EAAA,iBAAAC,EAAA,iBAAAC,EAAA,oBAAAC,IAAA,eAAAC,EAAAV,GCAO,IAAMW,EAAN,cAA4B,KAAM,CACxC,YACiBC,EACAC,EACAC,EACf,CACD,MAAMF,EAAS,CAAE,MAAAE,CAAM,CAAC,EAJR,aAAAF,EACA,aAAAC,EACA,WAAAC,CAGjB,CACD,ECLO,IAAeC,EAAf,cAAoCC,CAAc,CAG9C,YACOC,EACAC,EAChBC,EACC,CACD,MAAMF,EAAS,CAAE,iBAAAC,CAAiB,EAAGC,CAAK,EAJ1B,aAAAF,EACA,sBAAAC,CAIjB,CACD,ECGO,IAAME,EAAc,CAC1B,GAAI,IACJ,MAAO,IACP,WAAY,IACZ,iBAAkB,IAClB,cAAe,IACf,SAAU,IACV,gBAAiB,IACjB,gBAAiB,IACjB,aAAc,GACf,ECvBO,IAAMC,EAAN,cAA8BC,CAAa,CACjD,WAAaC,EAAY,WAEzB,YAAYC,EAAiBC,EAAiB,CAC7C,MAAMD,EAAS,CAAC,CAAE,QAAAA,CAAQ,CAAC,EAAGC,CAAK,CACpC,CACD,ECNO,IAAMC,EAAN,cAAoCC,CAAa,CACvD,WAAaC,EAAY,iBAEzB,YAAYC,EAAU,oBAAqBC,EAAiB,CAC3D,MAAMD,EAAS,CAAC,CAAE,QAAAA,CAAQ,CAAC,EAAGC,CAAK,CACpC,CACD,ECNO,IAAMC,EAAN,cAAiCC,CAAa,CACpD,WAAaC,EAAY,cAEzB,YAAYC,EAAU,iBAAkBC,EAAiB,CACxD,MAAMD,EAAS,CAAC,CAAE,QAAAA,CAAQ,CAAC,EAAGC,CAAK,CACpC,CACD,ECNO,IAAMC,EAAN,cAA4BC,CAAa,CAC/C,WAAaC,EAAY,SAEzB,YAAYC,EAAU,YAAaC,EAAiB,CACnD,MAAMD,EAAS,CAAC,CAAE,QAAAA,CAAQ,CAAC,EAAGC,CAAK,CACpC,CACD,ECNO,IAAMC,EAAN,cAA2BC,CAAa,CAC9C,WAAaC,EAAY,aAEzB,YAAYC,EAAU,gBAAiBC,EAAiB,CACvD,MAAMD,EAAS,CAAC,CAAE,QAAAA,CAAQ,CAAC,EAAGC,CAAK,CACpC,CACD,ECDO,IAAMC,EAAN,cAA8BC,CAAa,CACjD,WAAaC,EAAY,gBAEzB,YAAYC,EAAsBC,EAAiB,CAClD,MACC,uBACAD,EAAO,QAAQ,CAAC,CAAE,MAAAE,EAAO,SAAAC,CAAS,IAAMA,EAAS,IAAKC,IAAa,CAAE,QAAAA,EAAS,MAAAF,CAAM,EAAE,CAAC,EACvFD,CACD,CACD,CACD","names":["errors_exports","__export","BadRequestError","EquippedError","NotAuthenticatedError","NotAuthorizedError","NotFoundError","RequestError","TokenExpired","ValidationError","__toCommonJS","EquippedError","message","context","cause","RequestError","EquippedError","message","serializedErrors","cause","StatusCodes","BadRequestError","RequestError","StatusCodes","message","cause","NotAuthenticatedError","RequestError","StatusCodes","message","cause","NotAuthorizedError","RequestError","StatusCodes","message","cause","NotFoundError","RequestError","StatusCodes","message","cause","TokenExpired","RequestError","StatusCodes","message","cause","ValidationError","RequestError","StatusCodes","errors","cause","field","messages","message"]}
|
|
1
|
+
{"version":3,"sources":["../../../src/errors/index.ts","../../../src/errors/equippedError.ts","../../../src/errors/requestError.ts","../../../src/server/types.ts","../../../src/errors/types/badRequestError.ts","../../../src/errors/types/notAuthenticatedError.ts","../../../src/errors/types/notAuthorizedError.ts","../../../src/errors/types/notFoundError.ts","../../../src/errors/types/preconditionRequiredError.ts","../../../src/errors/types/tokenExpired.ts","../../../src/errors/types/validationError.ts"],"sourcesContent":["export * from './equippedError'\nexport * from './requestError'\nexport * from './types/badRequestError'\nexport * from './types/notAuthenticatedError'\nexport * from './types/notAuthorizedError'\nexport * from './types/notFoundError'\nexport * from './types/preconditionRequiredError'\nexport * from './types/tokenExpired'\nexport * from './types/validationError'\n","export class EquippedError extends Error {\n\tconstructor(\n\t\tpublic readonly message: string,\n\t\tpublic readonly context: Record<string, unknown>,\n\t\tpublic readonly cause?: unknown,\n\t) {\n\t\tsuper(message, { cause })\n\t}\n}\n","import type { StatusCodesEnum } from '../server'\nimport { EquippedError } from './equippedError'\n\nexport abstract class RequestError extends EquippedError {\n\tabstract readonly statusCode: StatusCodesEnum\n\n\tprotected constructor(\n\t\tpublic readonly message: string,\n\t\tpublic readonly serializedErrors: { message: string; field?: string }[],\n\t\tcause?: unknown,\n\t) {\n\t\tsuper(message, { serializedErrors }, cause)\n\t}\n}\n","import type { IsInTypeList, Pipe, PipeInput, PipeOutput, Prettify } from 'valleyed'\n\nimport type { RequestError } from '../errors'\nimport type { Enum } from '../types'\nimport type { Request, Response } from './requests'\n\nexport const Methods = {\n\thead: 'head',\n\tget: 'get',\n\tpost: 'post',\n\tput: 'put',\n\tpatch: 'patch',\n\tdelete: 'delete',\n\toptions: 'options',\n} as const\n\nexport const StatusCodes = {\n\tOk: 200,\n\tFound: 302,\n\tBadRequest: 400,\n\tNotAuthenticated: 401,\n\tNotAuthorized: 403,\n\tNotFound: 404,\n\tValidationError: 422,\n\tPreconditionRequired: 428,\n\tTooManyRequests: 429,\n\tTokenExpired: 461,\n} as const\n\nexport type MethodsEnum = Enum<typeof Methods>\nexport type StatusCodesEnum = Enum<typeof StatusCodes>\n\nexport type DefaultHeaders = Record<string, ArrayOrValue<string>>\nexport type DefaultCookies = Record<string, string | undefined>\n\ntype ArrayOrValue<T> = T | T[] | undefined\n\nexport type IncomingFile = {\n\tname: string\n\ttype: string\n\tsize: number\n\tisTruncated: boolean\n\tdata: Buffer\n\tduration: number\n}\n\nexport type RouteDef = {\n\tparams?: Pipe<Record<string, ArrayOrValue<string>>, Record<string, ArrayOrValue<string>>>\n\tquery?: Pipe<Record<string, ArrayOrValue<unknown>>, Record<string, ArrayOrValue<unknown>>>\n\theaders?: Pipe<DefaultHeaders, DefaultHeaders>\n\tcookies?: Pipe<DefaultCookies, DefaultCookies>\n\tbody?: Pipe<Record<string, unknown>, Record<string, unknown>>\n\tresponse?: Pipe<unknown, unknown>\n\tresponseHeaders?: Pipe<DefaultHeaders, DefaultHeaders>\n\tresponseCookies?: Pipe<DefaultCookies, DefaultCookies>\n\tdefaultStatusCode?: StatusCodesEnum\n\tdefaultContentType?: string\n}\n\ntype RouteGroup = { name: string; description?: string }\ntype HandlerSetup<T extends RouteDef> = (route: Route<T>) => void\n\nexport type RouteConfig<T extends RouteDef> = {\n\tmiddlewares?: ReturnType<typeof makeMiddleware<RouteDef>>[]\n\tresponseMiddlewares?: ReturnType<typeof makeResponseMiddleware<RouteDef>>[]\n\tonError?: ReturnType<typeof makeErrorMiddleware<RouteDef>>\n\tgroups?: (RouteGroup | RouteGroup['name'])[]\n\ttitle?: string\n\tdescriptions?: string[]\n\tsecurity?: Record<string, string[]>[]\n\tschema?: T\n\thide?: boolean\n}\n\nexport type RouterConfig<T extends RouteDef> = RouteConfig<T> & { path: string }\nexport type Route<T extends RouteDef> = RouteConfig<T> & {\n\tpath: string\n\tmethod: MethodsEnum\n\thandler: RouteDefHandler<T>\n}\n\ntype GetApiPart<T extends RouteDef, K extends keyof RouteDef> = NonNullable<IsInTypeList<T[K], [unknown]> extends true ? RouteDef[K] : T[K]>\n\ntype ArePipes<A, B> = A extends Pipe<any, any> ? (B extends Pipe<any, any> ? true : false) : false\ntype Compare<K extends keyof RouteDef, A, B> =\n\tIsInTypeList<B, [unknown]> extends true\n\t\t? A\n\t\t: IsInTypeList<A, [unknown]> extends true\n\t\t\t? B\n\t\t\t: K extends `default${string}` | 'context'\n\t\t\t\t? B\n\t\t\t\t: ArePipes<A, B> extends true\n\t\t\t\t\t? Pipe<PipeInput<A> & PipeInput<B>, PipeOutput<A> & PipeOutput<B>>\n\t\t\t\t\t: B\n\nexport type MergeRouteDefs<A extends RouteDef, B extends RouteDef> = {\n\t[K in keyof RouteDef]: Compare<K, A[K], B[K]>\n}\n\nexport type RouteDefToReqRes<T extends RouteDef> = Prettify<{\n\tbody: PipeOutput<GetApiPart<T, 'body'>>\n\tparams: PipeOutput<GetApiPart<T, 'params'>>\n\trequestHeaders: PipeOutput<GetApiPart<T, 'headers'>>\n\trequestCookies: PipeOutput<GetApiPart<T, 'cookies'>>\n\tquery: PipeOutput<GetApiPart<T, 'query'>>\n\tresponse: PipeOutput<GetApiPart<T, 'response'>>\n\tresponseHeaders: PipeOutput<GetApiPart<T, 'responseHeaders'>>\n\tresponseCookies: PipeOutput<GetApiPart<T, 'responseCookies'>>\n\tstatusCode: GetApiPart<T, 'defaultStatusCode'>\n\tcontentType: GetApiPart<T, 'defaultContentType'>\n}>\n\ntype Awaitable<T> = Promise<T> | T\ntype Res<T extends RouteDefToReqRes<any>> = Awaitable<\n\tIsInTypeList<T['statusCode'], [StatusCodesEnum, 200]> extends true\n\t\t? IsInTypeList<T['responseHeaders'], [DefaultHeaders]> extends true\n\t\t\t? IsInTypeList<T['responseCookies'], [DefaultCookies]> extends true\n\t\t\t\t? Response<T> | T['response']\n\t\t\t\t: Response<T>\n\t\t\t: Response<T>\n\t\t: Response<T>\n>\nexport type RouteDefHandler<Def extends RouteDef> = (req: Request<RouteDefToReqRes<Def>>) => Res<RouteDefToReqRes<Def>>\ntype RouteMiddlewareHandler<_Def extends RouteDef> = (req: Request<RouteDefToReqRes<RouteDef>>) => Awaitable<void>\ntype RouteResponseMiddlewareHandler<_Def extends RouteDef> = (\n\treq: Request<RouteDefToReqRes<RouteDef>>,\n\tres: Response<RouteDefToReqRes<RouteDef>>,\n) => Awaitable<void>\ntype ErrorHandler<Def extends RouteDef> = (\n\treq: Request<RouteDefToReqRes<Def>>,\n\terr: Error,\n) => Res<\n\tOmit<RouteDefToReqRes<Def>, 'response' | 'statusCode' | 'responseHeaders' | 'responseCookies'> & {\n\t\tresponse: RequestError['serializedErrors']\n\t\tstatusCode: RequestError['statusCode']\n\t\tresponseHeaders: DefaultHeaders\n\t\tresponseCookies: DefaultCookies\n\t}\n>\n\nfunction makeMiddlewareHandler<Cb extends Function, T extends RouteDef>(cb: Cb, onSetup?: HandlerSetup<T>) {\n\treturn { cb, onSetup }\n}\n\nexport const makeMiddleware = <Def extends RouteDef>(...args: Parameters<typeof makeMiddlewareHandler<RouteMiddlewareHandler<Def>, Def>>) =>\n\tmakeMiddlewareHandler(...args)\nexport const makeResponseMiddleware = <Def extends RouteDef>(\n\t...args: Parameters<typeof makeMiddlewareHandler<RouteResponseMiddlewareHandler<Def>, Def>>\n) => makeMiddlewareHandler(...args)\nexport const makeErrorMiddleware = <Def extends RouteDef>(...args: Parameters<typeof makeMiddlewareHandler<ErrorHandler<Def>, Def>>) =>\n\tmakeMiddlewareHandler(...args)\n","import { StatusCodes } from '../../server'\nimport { RequestError } from '../requestError'\n\nexport class BadRequestError extends RequestError {\n\tstatusCode = StatusCodes.BadRequest\n\n\tconstructor(message: string, cause?: unknown) {\n\t\tsuper(message, [{ message }], cause)\n\t}\n}\n","import { StatusCodes } from '../../server'\nimport { RequestError } from '../requestError'\n\nexport class NotAuthenticatedError extends RequestError {\n\tstatusCode = StatusCodes.NotAuthenticated\n\n\tconstructor(message = 'Not authenticated', cause?: unknown) {\n\t\tsuper(message, [{ message }], cause)\n\t}\n}\n","import { StatusCodes } from '../../server'\nimport { RequestError } from '../requestError'\n\nexport class NotAuthorizedError extends RequestError {\n\tstatusCode = StatusCodes.NotAuthorized\n\n\tconstructor(message = 'Not authorized', cause?: unknown) {\n\t\tsuper(message, [{ message }], cause)\n\t}\n}\n","import { StatusCodes } from '../../server'\nimport { RequestError } from '../requestError'\n\nexport class NotFoundError extends RequestError {\n\tstatusCode = StatusCodes.NotFound\n\n\tconstructor(message = 'Not found', cause?: unknown) {\n\t\tsuper(message, [{ message }], cause)\n\t}\n}\n","import { StatusCodes } from '../../server'\nimport { RequestError } from '../requestError'\n\nexport class PreconditionRequiredError extends RequestError {\n\tstatusCode = StatusCodes.PreconditionRequired\n\n\tconstructor(message = 'Precondition required', cause?: unknown) {\n\t\tsuper(message, [{ message }], cause)\n\t}\n}\n","import { StatusCodes } from '../../server'\nimport { RequestError } from '../requestError'\n\nexport class TokenExpired extends RequestError {\n\tstatusCode = StatusCodes.TokenExpired\n\n\tconstructor(message = 'Token expired', cause?: unknown) {\n\t\tsuper(message, [{ message }], cause)\n\t}\n}\n","import { StatusCodes } from '../../server'\nimport { RequestError } from '../requestError'\n\ntype ValidError = {\n\tmessages: string[]\n\tfield: string\n}\n\nexport class ValidationError extends RequestError {\n\tstatusCode = StatusCodes.ValidationError\n\n\tconstructor(errors: ValidError[], cause?: unknown) {\n\t\tsuper(\n\t\t\t'Unprocessable Entity',\n\t\t\terrors.flatMap(({ field, messages }) => messages.map((message) => ({ message, field }))),\n\t\t\tcause,\n\t\t)\n\t}\n}\n"],"mappings":"yaAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,qBAAAE,EAAA,kBAAAC,EAAA,0BAAAC,EAAA,uBAAAC,EAAA,kBAAAC,EAAA,8BAAAC,EAAA,iBAAAC,EAAA,iBAAAC,EAAA,oBAAAC,IAAA,eAAAC,EAAAX,GCAO,IAAMY,EAAN,cAA4B,KAAM,CACxC,YACiBC,EACAC,EACAC,EACf,CACD,MAAMF,EAAS,CAAE,MAAAE,CAAM,CAAC,EAJR,aAAAF,EACA,aAAAC,EACA,WAAAC,CAGjB,CACD,ECLO,IAAeC,EAAf,cAAoCC,CAAc,CAG9C,YACOC,EACAC,EAChBC,EACC,CACD,MAAMF,EAAS,CAAE,iBAAAC,CAAiB,EAAGC,CAAK,EAJ1B,aAAAF,EACA,sBAAAC,CAIjB,CACD,ECGO,IAAME,EAAc,CAC1B,GAAI,IACJ,MAAO,IACP,WAAY,IACZ,iBAAkB,IAClB,cAAe,IACf,SAAU,IACV,gBAAiB,IACjB,qBAAsB,IACtB,gBAAiB,IACjB,aAAc,GACf,ECxBO,IAAMC,EAAN,cAA8BC,CAAa,CACjD,WAAaC,EAAY,WAEzB,YAAYC,EAAiBC,EAAiB,CAC7C,MAAMD,EAAS,CAAC,CAAE,QAAAA,CAAQ,CAAC,EAAGC,CAAK,CACpC,CACD,ECNO,IAAMC,EAAN,cAAoCC,CAAa,CACvD,WAAaC,EAAY,iBAEzB,YAAYC,EAAU,oBAAqBC,EAAiB,CAC3D,MAAMD,EAAS,CAAC,CAAE,QAAAA,CAAQ,CAAC,EAAGC,CAAK,CACpC,CACD,ECNO,IAAMC,EAAN,cAAiCC,CAAa,CACpD,WAAaC,EAAY,cAEzB,YAAYC,EAAU,iBAAkBC,EAAiB,CACxD,MAAMD,EAAS,CAAC,CAAE,QAAAA,CAAQ,CAAC,EAAGC,CAAK,CACpC,CACD,ECNO,IAAMC,EAAN,cAA4BC,CAAa,CAC/C,WAAaC,EAAY,SAEzB,YAAYC,EAAU,YAAaC,EAAiB,CACnD,MAAMD,EAAS,CAAC,CAAE,QAAAA,CAAQ,CAAC,EAAGC,CAAK,CACpC,CACD,ECNO,IAAMC,EAAN,cAAwCC,CAAa,CAC3D,WAAaC,EAAY,qBAEzB,YAAYC,EAAU,wBAAyBC,EAAiB,CAC/D,MAAMD,EAAS,CAAC,CAAE,QAAAA,CAAQ,CAAC,EAAGC,CAAK,CACpC,CACD,ECNO,IAAMC,EAAN,cAA2BC,CAAa,CAC9C,WAAaC,EAAY,aAEzB,YAAYC,EAAU,gBAAiBC,EAAiB,CACvD,MAAMD,EAAS,CAAC,CAAE,QAAAA,CAAQ,CAAC,EAAGC,CAAK,CACpC,CACD,ECDO,IAAMC,EAAN,cAA8BC,CAAa,CACjD,WAAaC,EAAY,gBAEzB,YAAYC,EAAsBC,EAAiB,CAClD,MACC,uBACAD,EAAO,QAAQ,CAAC,CAAE,MAAAE,EAAO,SAAAC,CAAS,IAAMA,EAAS,IAAKC,IAAa,CAAE,QAAAA,EAAS,MAAAF,CAAM,EAAE,CAAC,EACvFD,CACD,CACD,CACD","names":["errors_exports","__export","BadRequestError","EquippedError","NotAuthenticatedError","NotAuthorizedError","NotFoundError","PreconditionRequiredError","RequestError","TokenExpired","ValidationError","__toCommonJS","EquippedError","message","context","cause","RequestError","EquippedError","message","serializedErrors","cause","StatusCodes","BadRequestError","RequestError","StatusCodes","message","cause","NotAuthenticatedError","RequestError","StatusCodes","message","cause","NotAuthorizedError","RequestError","StatusCodes","message","cause","NotFoundError","RequestError","StatusCodes","message","cause","PreconditionRequiredError","RequestError","StatusCodes","message","cause","TokenExpired","RequestError","StatusCodes","message","cause","ValidationError","RequestError","StatusCodes","errors","cause","field","messages","message"]}
|
|
@@ -638,6 +638,13 @@ var init_notFoundError = __esm({
|
|
|
638
638
|
}
|
|
639
639
|
});
|
|
640
640
|
|
|
641
|
+
// src/errors/types/preconditionRequiredError.ts
|
|
642
|
+
var init_preconditionRequiredError = __esm({
|
|
643
|
+
"src/errors/types/preconditionRequiredError.ts"() {
|
|
644
|
+
"use strict";
|
|
645
|
+
}
|
|
646
|
+
});
|
|
647
|
+
|
|
641
648
|
// src/errors/types/tokenExpired.ts
|
|
642
649
|
var init_tokenExpired = __esm({
|
|
643
650
|
"src/errors/types/tokenExpired.ts"() {
|
|
@@ -662,6 +669,7 @@ var init_errors = __esm({
|
|
|
662
669
|
init_notAuthenticatedError();
|
|
663
670
|
init_notAuthorizedError();
|
|
664
671
|
init_notFoundError();
|
|
672
|
+
init_preconditionRequiredError();
|
|
665
673
|
init_tokenExpired();
|
|
666
674
|
init_validationError();
|
|
667
675
|
}
|