@atproto/xrpc-server 0.8.0 → 0.9.1

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.
Files changed (45) hide show
  1. package/CHANGELOG.md +34 -0
  2. package/dist/auth.js +11 -11
  3. package/dist/auth.js.map +1 -1
  4. package/dist/errors.d.ts +67 -0
  5. package/dist/errors.d.ts.map +1 -0
  6. package/dist/errors.js +202 -0
  7. package/dist/errors.js.map +1 -0
  8. package/dist/index.d.ts +4 -3
  9. package/dist/index.d.ts.map +1 -1
  10. package/dist/index.js +5 -3
  11. package/dist/index.js.map +1 -1
  12. package/dist/rate-limiter.d.ts +69 -32
  13. package/dist/rate-limiter.d.ts.map +1 -1
  14. package/dist/rate-limiter.js +58 -41
  15. package/dist/rate-limiter.js.map +1 -1
  16. package/dist/server.d.ts +19 -14
  17. package/dist/server.d.ts.map +1 -1
  18. package/dist/server.js +151 -137
  19. package/dist/server.js.map +1 -1
  20. package/dist/types.d.ts +80 -178
  21. package/dist/types.d.ts.map +1 -1
  22. package/dist/types.js +9 -226
  23. package/dist/types.js.map +1 -1
  24. package/dist/util.d.ts +9 -8
  25. package/dist/util.d.ts.map +1 -1
  26. package/dist/util.js +148 -108
  27. package/dist/util.js.map +1 -1
  28. package/package.json +4 -3
  29. package/src/auth.ts +1 -1
  30. package/src/errors.ts +293 -0
  31. package/src/index.ts +9 -3
  32. package/src/rate-limiter.ts +188 -96
  33. package/src/server.ts +198 -154
  34. package/src/types.ts +144 -439
  35. package/src/util.ts +176 -125
  36. package/tests/auth.test.ts +2 -2
  37. package/tests/bodies.test.ts +18 -27
  38. package/tests/errors.test.ts +1 -1
  39. package/tests/ipld.test.ts +15 -14
  40. package/tests/parameters.test.ts +4 -7
  41. package/tests/procedures.test.ts +22 -34
  42. package/tests/queries.test.ts +9 -12
  43. package/tests/rate-limiter.test.ts +7 -7
  44. package/tests/responses.test.ts +12 -15
  45. package/tsconfig.build.tsbuildinfo +1 -1
package/dist/types.d.ts CHANGED
@@ -1,22 +1,20 @@
1
1
  import { IncomingMessage } from 'node:http';
2
2
  import { Readable } from 'node:stream';
3
- import express from 'express';
3
+ import { NextFunction, Request, Response } from 'express';
4
4
  import { z } from 'zod';
5
- import { ResponseType } from '@atproto/xrpc';
6
- export type CatchallHandler = (req: express.Request, _res: express.Response, next: express.NextFunction) => unknown;
5
+ import { ErrorResult, XRPCError } from './errors';
6
+ import { CalcKeyFn, CalcPointsFn, RateLimiterI } from './rate-limiter';
7
+ export type Awaitable<T> = T | Promise<T>;
8
+ export type CatchallHandler = (req: Request, res: Response, next: NextFunction) => unknown;
7
9
  export type Options = {
8
10
  validateResponse?: boolean;
9
11
  catchall?: CatchallHandler;
10
- payload?: {
11
- jsonLimit?: number;
12
- blobLimit?: number;
13
- textLimit?: number;
14
- };
12
+ payload?: RouteOptions;
15
13
  rateLimits?: {
16
- creator: RateLimiterCreator;
17
- global?: ServerRateLimitDescription[];
18
- shared?: ServerRateLimitDescription[];
19
- bypass?: (ctx: XRPCReqContext) => boolean;
14
+ creator: RateLimiterCreator<HandlerContext>;
15
+ global?: ServerRateLimitDescription<HandlerContext>[];
16
+ shared?: ServerRateLimitDescription<HandlerContext>[];
17
+ bypass?: (ctx: HandlerContext) => boolean;
20
18
  };
21
19
  /**
22
20
  * By default, errors are converted to {@link XRPCError} using
@@ -30,44 +28,33 @@ export type Options = {
30
28
  */
31
29
  errorParser?: (err: unknown) => XRPCError;
32
30
  };
33
- export type UndecodedParams = (typeof express.request)['query'];
31
+ export type UndecodedParams = Request['query'];
34
32
  export type Primitive = string | number | boolean;
35
- export type Params = Record<string, Primitive | Primitive[] | undefined>;
36
- export declare const handlerInput: z.ZodObject<{
37
- encoding: z.ZodString;
38
- body: z.ZodAny;
39
- }, "strip", z.ZodTypeAny, {
40
- encoding: string;
41
- body?: any;
42
- }, {
33
+ export type Params = {
34
+ [P in string]?: undefined | Primitive | Primitive[];
35
+ };
36
+ export type HandlerInput = {
43
37
  encoding: string;
44
- body?: any;
45
- }>;
46
- export type HandlerInput = z.infer<typeof handlerInput>;
47
- export declare const handlerAuth: z.ZodObject<{
48
- credentials: z.ZodAny;
49
- artifacts: z.ZodAny;
50
- }, "strip", z.ZodTypeAny, {
51
- credentials?: any;
52
- artifacts?: any;
53
- }, {
54
- credentials?: any;
55
- artifacts?: any;
56
- }>;
57
- export type HandlerAuth = z.infer<typeof handlerAuth>;
38
+ body: unknown;
39
+ };
40
+ export type AuthResult = {
41
+ credentials: unknown;
42
+ artifacts?: unknown;
43
+ };
58
44
  export declare const headersSchema: z.ZodRecord<z.ZodString, z.ZodString>;
45
+ export type Headers = z.infer<typeof headersSchema>;
59
46
  export declare const handlerSuccess: z.ZodObject<{
60
47
  encoding: z.ZodString;
61
48
  body: z.ZodAny;
62
49
  headers: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
63
50
  }, "strip", z.ZodTypeAny, {
64
51
  encoding: string;
65
- body?: any;
66
52
  headers?: Record<string, string> | undefined;
53
+ body?: any;
67
54
  }, {
68
55
  encoding: string;
69
- body?: any;
70
56
  headers?: Record<string, string> | undefined;
57
+ body?: any;
71
58
  }>;
72
59
  export type HandlerSuccess = z.infer<typeof handlerSuccess>;
73
60
  export declare const handlerPipeThroughBuffer: z.ZodObject<{
@@ -124,163 +111,78 @@ export declare const handlerPipeThrough: z.ZodUnion<[z.ZodObject<{
124
111
  headers?: Record<string, string> | undefined;
125
112
  }>]>;
126
113
  export type HandlerPipeThrough = z.infer<typeof handlerPipeThrough>;
127
- export declare const handlerError: z.ZodObject<{
128
- status: z.ZodNumber;
129
- error: z.ZodOptional<z.ZodString>;
130
- message: z.ZodOptional<z.ZodString>;
131
- }, "strip", z.ZodTypeAny, {
132
- status: number;
133
- message?: string | undefined;
134
- error?: string | undefined;
135
- }, {
136
- status: number;
137
- message?: string | undefined;
138
- error?: string | undefined;
139
- }>;
140
- export type HandlerError = z.infer<typeof handlerError>;
141
- export type HandlerOutput = HandlerSuccess | HandlerPipeThrough | HandlerError;
142
- export type XRPCReqContext = {
143
- auth: HandlerAuth | undefined;
144
- params: Params;
145
- input: HandlerInput | undefined;
146
- req: express.Request;
147
- res: express.Response;
148
- resetRouteRateLimits: () => Promise<void>;
114
+ export type Auth = void | AuthResult;
115
+ export type Input = void | HandlerInput;
116
+ export type Output = void | HandlerSuccess | ErrorResult;
117
+ export type AuthVerifier<C, A extends AuthResult = AuthResult> = ((ctx: C) => Awaitable<A | ErrorResult>) | ((ctx: C) => Awaitable<A>);
118
+ export type MethodAuthContext<P extends Params = Params> = {
119
+ params: P;
120
+ req: Request;
121
+ res: Response;
149
122
  };
150
- export type XRPCHandler = (ctx: XRPCReqContext) => Promise<HandlerOutput> | HandlerOutput | undefined;
151
- export type XRPCStreamHandler = (ctx: {
152
- auth: HandlerAuth | undefined;
153
- params: Params;
154
- req: IncomingMessage;
155
- signal: AbortSignal;
156
- }) => AsyncIterable<unknown>;
157
- export type AuthOutput = HandlerAuth | HandlerError;
158
- export interface AuthVerifierContext {
159
- req: express.Request;
160
- res: express.Response;
161
- }
162
- export type AuthVerifier = (ctx: AuthVerifierContext) => Promise<AuthOutput> | AuthOutput;
163
- export interface StreamAuthVerifierContext {
164
- req: IncomingMessage;
165
- }
166
- export type StreamAuthVerifier = (ctx: StreamAuthVerifierContext) => Promise<AuthOutput> | AuthOutput;
167
- export type CalcKeyFn = (ctx: XRPCReqContext) => string | null;
168
- export type CalcPointsFn = (ctx: XRPCReqContext) => number;
169
- export interface RateLimiterI {
170
- consume: RateLimiterConsume;
171
- reset: RateLimiterReset;
172
- }
173
- export type RateLimiterConsumeOptions = {
174
- calcKey?: CalcKeyFn;
175
- calcPoints?: CalcPointsFn;
176
- };
177
- export type RateLimiterConsume = (ctx: XRPCReqContext, opts?: RateLimiterConsumeOptions) => Promise<RateLimiterStatus | RateLimitExceededError | null>;
178
- export type RateLimiterResetOptions = {
179
- calcKey?: CalcKeyFn;
123
+ export type MethodAuthVerifier<A extends AuthResult = AuthResult, P extends Params = Params> = AuthVerifier<MethodAuthContext<P>, A>;
124
+ export type HandlerContext<A extends Auth = Auth, P extends Params = Params, I extends Input = Input> = MethodAuthContext<P> & {
125
+ auth: A;
126
+ input: I;
127
+ resetRouteRateLimits: () => Promise<void>;
180
128
  };
181
- export type RateLimiterReset = (ctx: XRPCReqContext, opts?: RateLimiterResetOptions) => Promise<void>;
182
- export type RateLimiterCreator = (opts: {
129
+ export type MethodHandler<A extends Auth = Auth, P extends Params = Params, I extends Input = Input, O extends Output = Output> = (ctx: HandlerContext<A, P, I>) => Awaitable<O | HandlerPipeThrough>;
130
+ export type RateLimiterCreator<T extends HandlerContext = HandlerContext> = <C extends T = T>(opts: {
183
131
  keyPrefix: string;
184
132
  durationMs: number;
185
133
  points: number;
186
- calcKey?: CalcKeyFn;
187
- calcPoints?: CalcPointsFn;
188
- }) => RateLimiterI;
189
- export type ServerRateLimitDescription = {
134
+ calcKey: CalcKeyFn<C>;
135
+ calcPoints: CalcPointsFn<C>;
136
+ failClosed?: boolean;
137
+ }) => RateLimiterI<C>;
138
+ export type ServerRateLimitDescription<C extends HandlerContext = HandlerContext> = {
190
139
  name: string;
191
140
  durationMs: number;
192
141
  points: number;
193
- calcKey?: CalcKeyFn;
194
- calcPoints?: CalcPointsFn;
142
+ calcKey?: CalcKeyFn<C>;
143
+ calcPoints?: CalcPointsFn<C>;
144
+ failClosed?: boolean;
195
145
  };
196
- export type SharedRateLimitOpts = {
146
+ export type SharedRateLimitOpts<C extends HandlerContext = HandlerContext> = {
197
147
  name: string;
198
- calcKey?: CalcKeyFn;
199
- calcPoints?: CalcPointsFn;
148
+ calcKey?: CalcKeyFn<C>;
149
+ calcPoints?: CalcPointsFn<C>;
200
150
  };
201
- export type RouteRateLimitOpts = {
151
+ export type RouteRateLimitOpts<C extends HandlerContext = HandlerContext> = {
202
152
  durationMs: number;
203
153
  points: number;
204
- calcKey?: CalcKeyFn;
205
- calcPoints?: CalcPointsFn;
154
+ calcKey?: CalcKeyFn<C>;
155
+ calcPoints?: CalcPointsFn<C>;
206
156
  };
207
- export type HandlerRateLimitOpts = SharedRateLimitOpts | RouteRateLimitOpts;
208
- export declare const isShared: (opts: HandlerRateLimitOpts) => opts is SharedRateLimitOpts;
209
- export type RateLimiterStatus = {
210
- limit: number;
211
- duration: number;
212
- remainingPoints: number;
213
- msBeforeNext: number;
214
- consumedPoints: number;
215
- isFirstInDuration: boolean;
216
- };
217
- export type RouteOpts = {
157
+ export type RateLimitOpts<C extends HandlerContext = HandlerContext> = SharedRateLimitOpts<C> | RouteRateLimitOpts<C>;
158
+ export declare function isSharedRateLimitOpts<C extends HandlerContext = HandlerContext>(opts: RateLimitOpts<C>): opts is SharedRateLimitOpts<C>;
159
+ export type RouteOptions = {
218
160
  blobLimit?: number;
161
+ jsonLimit?: number;
162
+ textLimit?: number;
163
+ };
164
+ export type MethodConfig<A extends Auth = Auth, P extends Params = Params, I extends Input = Input, O extends Output = Output> = {
165
+ handler: MethodHandler<A, P, I, O>;
166
+ auth?: MethodAuthVerifier<Extract<A, AuthResult>, P>;
167
+ opts?: RouteOptions;
168
+ rateLimit?: RateLimitOpts<HandlerContext<A, P, I>> | RateLimitOpts<HandlerContext<A, P, I>>[];
219
169
  };
220
- export type XRPCHandlerConfig = {
221
- opts?: RouteOpts;
222
- rateLimit?: HandlerRateLimitOpts | HandlerRateLimitOpts[];
223
- auth?: AuthVerifier;
224
- handler: XRPCHandler;
170
+ export type MethodConfigOrHandler<A extends Auth = Auth, P extends Params = Params, I extends Input = Input, O extends Output = Output> = MethodHandler<A, P, I, O> | MethodConfig<A, P, I, O>;
171
+ export type StreamAuthContext<P extends Params = Params> = {
172
+ params: P;
173
+ req: IncomingMessage;
174
+ };
175
+ export type StreamAuthVerifier<A extends AuthResult = AuthResult, P extends Params = Params> = AuthVerifier<StreamAuthContext<P>, A>;
176
+ export type StreamContext<A extends Auth = Auth, P extends Params = Params> = StreamAuthContext<P> & {
177
+ auth: A;
178
+ signal: AbortSignal;
225
179
  };
226
- export type XRPCStreamHandlerConfig = {
227
- auth?: StreamAuthVerifier;
228
- handler: XRPCStreamHandler;
180
+ export type StreamHandler<A extends Auth = Auth, P extends Params = Params, O = unknown> = (ctx: StreamContext<A, P>) => AsyncIterable<O>;
181
+ export type StreamConfig<A extends Auth = Auth, P extends Params = Params, O = unknown> = {
182
+ auth?: StreamAuthVerifier<Extract<A, AuthResult>, P>;
183
+ handler: StreamHandler<A, P, O>;
229
184
  };
230
- export { ResponseType };
231
- export declare class XRPCError extends Error {
232
- type: ResponseType;
233
- errorMessage?: string | undefined;
234
- customErrorName?: string | undefined;
235
- constructor(type: ResponseType, errorMessage?: string | undefined, customErrorName?: string | undefined, options?: ErrorOptions);
236
- get statusCode(): number;
237
- get payload(): {
238
- error: string | undefined;
239
- message: string | undefined;
240
- };
241
- get typeName(): string | undefined;
242
- get typeStr(): string | undefined;
243
- static fromError(cause: unknown): XRPCError;
244
- static fromHandlerError(err: HandlerError): XRPCError;
245
- }
246
- export declare function isHandlerError(v: unknown): v is HandlerError;
247
- export declare function isHandlerPipeThroughBuffer(v: HandlerOutput): v is HandlerPipeThroughBuffer;
248
- export declare function isHandlerPipeThroughStream(v: HandlerOutput): v is HandlerPipeThroughStream;
249
- export declare class InvalidRequestError extends XRPCError {
250
- constructor(errorMessage?: string, customErrorName?: string, options?: ErrorOptions);
251
- [Symbol.hasInstance](instance: unknown): boolean;
252
- }
253
- export declare class AuthRequiredError extends XRPCError {
254
- constructor(errorMessage?: string, customErrorName?: string, options?: ErrorOptions);
255
- [Symbol.hasInstance](instance: unknown): boolean;
256
- }
257
- export declare class ForbiddenError extends XRPCError {
258
- constructor(errorMessage?: string, customErrorName?: string, options?: ErrorOptions);
259
- [Symbol.hasInstance](instance: unknown): boolean;
260
- }
261
- export declare class RateLimitExceededError extends XRPCError {
262
- status: RateLimiterStatus;
263
- constructor(status: RateLimiterStatus, errorMessage?: string, customErrorName?: string, options?: ErrorOptions);
264
- [Symbol.hasInstance](instance: unknown): boolean;
265
- }
266
- export declare class InternalServerError extends XRPCError {
267
- constructor(errorMessage?: string, customErrorName?: string, options?: ErrorOptions);
268
- [Symbol.hasInstance](instance: unknown): boolean;
269
- }
270
- export declare class UpstreamFailureError extends XRPCError {
271
- constructor(errorMessage?: string, customErrorName?: string, options?: ErrorOptions);
272
- [Symbol.hasInstance](instance: unknown): boolean;
273
- }
274
- export declare class NotEnoughResourcesError extends XRPCError {
275
- constructor(errorMessage?: string, customErrorName?: string, options?: ErrorOptions);
276
- [Symbol.hasInstance](instance: unknown): boolean;
277
- }
278
- export declare class UpstreamTimeoutError extends XRPCError {
279
- constructor(errorMessage?: string, customErrorName?: string, options?: ErrorOptions);
280
- [Symbol.hasInstance](instance: unknown): boolean;
281
- }
282
- export declare class MethodNotImplementedError extends XRPCError {
283
- constructor(errorMessage?: string, customErrorName?: string, options?: ErrorOptions);
284
- [Symbol.hasInstance](instance: unknown): boolean;
285
- }
185
+ export type StreamConfigOrHandler<A extends Auth = Auth, P extends Params = Params, O = unknown> = StreamHandler<A, P, O> | StreamConfig<A, P, O>;
186
+ export declare function isHandlerPipeThroughBuffer(output: Output): output is HandlerPipeThroughBuffer;
187
+ export declare function isHandlerPipeThroughStream(output: Output): output is HandlerPipeThroughStream;
286
188
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
package/dist/types.js CHANGED
@@ -1,22 +1,11 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.MethodNotImplementedError = exports.UpstreamTimeoutError = exports.NotEnoughResourcesError = exports.UpstreamFailureError = exports.InternalServerError = exports.RateLimitExceededError = exports.ForbiddenError = exports.AuthRequiredError = exports.InvalidRequestError = exports.XRPCError = exports.ResponseType = exports.isShared = exports.handlerError = exports.handlerPipeThrough = exports.handlerPipeThroughStream = exports.handlerPipeThroughBuffer = exports.handlerSuccess = exports.headersSchema = exports.handlerAuth = exports.handlerInput = void 0;
4
- exports.isHandlerError = isHandlerError;
3
+ exports.handlerPipeThrough = exports.handlerPipeThroughStream = exports.handlerPipeThroughBuffer = exports.handlerSuccess = exports.headersSchema = void 0;
4
+ exports.isSharedRateLimitOpts = isSharedRateLimitOpts;
5
5
  exports.isHandlerPipeThroughBuffer = isHandlerPipeThroughBuffer;
6
6
  exports.isHandlerPipeThroughStream = isHandlerPipeThroughStream;
7
7
  const node_stream_1 = require("node:stream");
8
- const http_errors_1 = require("http-errors");
9
8
  const zod_1 = require("zod");
10
- const xrpc_1 = require("@atproto/xrpc");
11
- Object.defineProperty(exports, "ResponseType", { enumerable: true, get: function () { return xrpc_1.ResponseType; } });
12
- exports.handlerInput = zod_1.z.object({
13
- encoding: zod_1.z.string(),
14
- body: zod_1.z.any(),
15
- });
16
- exports.handlerAuth = zod_1.z.object({
17
- credentials: zod_1.z.any(),
18
- artifacts: zod_1.z.any(),
19
- });
20
9
  exports.headersSchema = zod_1.z.record(zod_1.z.string());
21
10
  exports.handlerSuccess = zod_1.z.object({
22
11
  encoding: zod_1.z.string(),
@@ -37,221 +26,15 @@ exports.handlerPipeThrough = zod_1.z.union([
37
26
  exports.handlerPipeThroughBuffer,
38
27
  exports.handlerPipeThroughStream,
39
28
  ]);
40
- exports.handlerError = zod_1.z.object({
41
- status: zod_1.z.number(),
42
- error: zod_1.z.string().optional(),
43
- message: zod_1.z.string().optional(),
44
- });
45
- const isShared = (opts) => {
29
+ function isSharedRateLimitOpts(opts) {
46
30
  return typeof opts['name'] === 'string';
47
- };
48
- exports.isShared = isShared;
49
- /**
50
- * Converts an upstream XRPC {@link ResponseType} into a downstream {@link ResponseType}.
51
- */
52
- function mapFromClientError(error) {
53
- switch (error.status) {
54
- case xrpc_1.ResponseType.InvalidResponse:
55
- // Upstream server returned an XRPC response that is not compatible with our internal lexicon definitions for that XRPC method.
56
- // @NOTE This could be reflected as both a 500 ("we" are at fault) and 502 ("they" are at fault). Let's be gents about it.
57
- return {
58
- error: (0, xrpc_1.httpResponseCodeToName)(xrpc_1.ResponseType.InternalServerError),
59
- message: (0, xrpc_1.httpResponseCodeToString)(xrpc_1.ResponseType.InternalServerError),
60
- type: xrpc_1.ResponseType.InternalServerError,
61
- };
62
- case xrpc_1.ResponseType.Unknown:
63
- // Typically a network error / unknown host
64
- return {
65
- error: (0, xrpc_1.httpResponseCodeToName)(xrpc_1.ResponseType.InternalServerError),
66
- message: (0, xrpc_1.httpResponseCodeToString)(xrpc_1.ResponseType.InternalServerError),
67
- type: xrpc_1.ResponseType.InternalServerError,
68
- };
69
- default:
70
- return {
71
- error: error.error,
72
- message: error.message,
73
- type: error.status,
74
- };
75
- }
76
- }
77
- class XRPCError extends Error {
78
- constructor(type, errorMessage, customErrorName, options) {
79
- super(errorMessage, options);
80
- Object.defineProperty(this, "type", {
81
- enumerable: true,
82
- configurable: true,
83
- writable: true,
84
- value: type
85
- });
86
- Object.defineProperty(this, "errorMessage", {
87
- enumerable: true,
88
- configurable: true,
89
- writable: true,
90
- value: errorMessage
91
- });
92
- Object.defineProperty(this, "customErrorName", {
93
- enumerable: true,
94
- configurable: true,
95
- writable: true,
96
- value: customErrorName
97
- });
98
- }
99
- get statusCode() {
100
- const { type } = this;
101
- // Fool-proofing. `new XRPCError(123.5 as number, '')` does not generate a TypeScript error.
102
- // Because of this, we can end-up with any numeric value instead of an actual `ResponseType`.
103
- // For legacy reasons, the `type` argument is not checked in the constructor, so we check it here.
104
- if (type < 400 || type >= 600 || !Number.isFinite(type)) {
105
- return 500;
106
- }
107
- return type;
108
- }
109
- get payload() {
110
- return {
111
- error: this.customErrorName ?? this.typeName,
112
- message: this.type === xrpc_1.ResponseType.InternalServerError
113
- ? this.typeStr // Do not respond with error details for 500s
114
- : this.errorMessage || this.typeStr,
115
- };
116
- }
117
- get typeName() {
118
- return xrpc_1.ResponseType[this.type];
119
- }
120
- get typeStr() {
121
- return xrpc_1.ResponseTypeStrings[this.type];
122
- }
123
- static fromError(cause) {
124
- if (cause instanceof XRPCError) {
125
- return cause;
126
- }
127
- if (cause instanceof xrpc_1.XRPCError) {
128
- const { error, message, type } = mapFromClientError(cause);
129
- return new XRPCError(type, message, error, { cause });
130
- }
131
- if ((0, http_errors_1.isHttpError)(cause)) {
132
- return new XRPCError(cause.status, cause.message, cause.name, { cause });
133
- }
134
- if (isHandlerError(cause)) {
135
- return this.fromHandlerError(cause);
136
- }
137
- if (cause instanceof Error) {
138
- return new InternalServerError(cause.message, undefined, { cause });
139
- }
140
- return new InternalServerError('Unexpected internal server error', undefined, { cause });
141
- }
142
- static fromHandlerError(err) {
143
- return new XRPCError(err.status, err.message, err.error, { cause: err });
144
- }
145
- }
146
- exports.XRPCError = XRPCError;
147
- function isHandlerError(v) {
148
- return (!!v &&
149
- typeof v === 'object' &&
150
- typeof v['status'] === 'number' &&
151
- (v['error'] === undefined || typeof v['error'] === 'string') &&
152
- (v['message'] === undefined || typeof v['message'] === 'string'));
153
- }
154
- function isHandlerPipeThroughBuffer(v) {
155
- // We only need to discriminate between possible HandlerOutput values
156
- return v['buffer'] !== undefined;
157
- }
158
- function isHandlerPipeThroughStream(v) {
159
- // We only need to discriminate between possible HandlerOutput values
160
- return v['stream'] !== undefined;
161
- }
162
- class InvalidRequestError extends XRPCError {
163
- constructor(errorMessage, customErrorName, options) {
164
- super(xrpc_1.ResponseType.InvalidRequest, errorMessage, customErrorName, options);
165
- }
166
- [Symbol.hasInstance](instance) {
167
- return (instance instanceof XRPCError &&
168
- instance.type === xrpc_1.ResponseType.InvalidRequest);
169
- }
170
- }
171
- exports.InvalidRequestError = InvalidRequestError;
172
- class AuthRequiredError extends XRPCError {
173
- constructor(errorMessage, customErrorName, options) {
174
- super(xrpc_1.ResponseType.AuthenticationRequired, errorMessage, customErrorName, options);
175
- }
176
- [Symbol.hasInstance](instance) {
177
- return (instance instanceof XRPCError &&
178
- instance.type === xrpc_1.ResponseType.AuthenticationRequired);
179
- }
180
- }
181
- exports.AuthRequiredError = AuthRequiredError;
182
- class ForbiddenError extends XRPCError {
183
- constructor(errorMessage, customErrorName, options) {
184
- super(xrpc_1.ResponseType.Forbidden, errorMessage, customErrorName, options);
185
- }
186
- [Symbol.hasInstance](instance) {
187
- return (instance instanceof XRPCError && instance.type === xrpc_1.ResponseType.Forbidden);
188
- }
189
- }
190
- exports.ForbiddenError = ForbiddenError;
191
- class RateLimitExceededError extends XRPCError {
192
- constructor(status, errorMessage, customErrorName, options) {
193
- super(xrpc_1.ResponseType.RateLimitExceeded, errorMessage, customErrorName, options);
194
- Object.defineProperty(this, "status", {
195
- enumerable: true,
196
- configurable: true,
197
- writable: true,
198
- value: status
199
- });
200
- }
201
- [Symbol.hasInstance](instance) {
202
- return (instance instanceof XRPCError &&
203
- instance.type === xrpc_1.ResponseType.RateLimitExceeded);
204
- }
205
- }
206
- exports.RateLimitExceededError = RateLimitExceededError;
207
- class InternalServerError extends XRPCError {
208
- constructor(errorMessage, customErrorName, options) {
209
- super(xrpc_1.ResponseType.InternalServerError, errorMessage, customErrorName, options);
210
- }
211
- [Symbol.hasInstance](instance) {
212
- return (instance instanceof XRPCError &&
213
- instance.type === xrpc_1.ResponseType.InternalServerError);
214
- }
215
- }
216
- exports.InternalServerError = InternalServerError;
217
- class UpstreamFailureError extends XRPCError {
218
- constructor(errorMessage, customErrorName, options) {
219
- super(xrpc_1.ResponseType.UpstreamFailure, errorMessage, customErrorName, options);
220
- }
221
- [Symbol.hasInstance](instance) {
222
- return (instance instanceof XRPCError &&
223
- instance.type === xrpc_1.ResponseType.UpstreamFailure);
224
- }
225
- }
226
- exports.UpstreamFailureError = UpstreamFailureError;
227
- class NotEnoughResourcesError extends XRPCError {
228
- constructor(errorMessage, customErrorName, options) {
229
- super(xrpc_1.ResponseType.NotEnoughResources, errorMessage, customErrorName, options);
230
- }
231
- [Symbol.hasInstance](instance) {
232
- return (instance instanceof XRPCError &&
233
- instance.type === xrpc_1.ResponseType.NotEnoughResources);
234
- }
235
31
  }
236
- exports.NotEnoughResourcesError = NotEnoughResourcesError;
237
- class UpstreamTimeoutError extends XRPCError {
238
- constructor(errorMessage, customErrorName, options) {
239
- super(xrpc_1.ResponseType.UpstreamTimeout, errorMessage, customErrorName, options);
240
- }
241
- [Symbol.hasInstance](instance) {
242
- return (instance instanceof XRPCError &&
243
- instance.type === xrpc_1.ResponseType.UpstreamTimeout);
244
- }
32
+ function isHandlerPipeThroughBuffer(output) {
33
+ // We only need to discriminate between possible Output values
34
+ return output != null && 'buffer' in output && output['buffer'] !== undefined;
245
35
  }
246
- exports.UpstreamTimeoutError = UpstreamTimeoutError;
247
- class MethodNotImplementedError extends XRPCError {
248
- constructor(errorMessage, customErrorName, options) {
249
- super(xrpc_1.ResponseType.MethodNotImplemented, errorMessage, customErrorName, options);
250
- }
251
- [Symbol.hasInstance](instance) {
252
- return (instance instanceof XRPCError &&
253
- instance.type === xrpc_1.ResponseType.MethodNotImplemented);
254
- }
36
+ function isHandlerPipeThroughStream(output) {
37
+ // We only need to discriminate between possible Output values
38
+ return output != null && 'stream' in output && output['stream'] !== undefined;
255
39
  }
256
- exports.MethodNotImplementedError = MethodNotImplementedError;
257
40
  //# sourceMappingURL=types.js.map
package/dist/types.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":";;;AAmKA,sDAIC;AAoED,gEAKC;AAED,gEAKC;AAtPD,6CAAsC;AAEtC,6BAAuB;AAkDV,QAAA,aAAa,GAAG,OAAC,CAAC,MAAM,CAAC,OAAC,CAAC,MAAM,EAAE,CAAC,CAAA;AAIpC,QAAA,cAAc,GAAG,OAAC,CAAC,MAAM,CAAC;IACrC,QAAQ,EAAE,OAAC,CAAC,MAAM,EAAE;IACpB,IAAI,EAAE,OAAC,CAAC,GAAG,EAAE;IACb,OAAO,EAAE,qBAAa,CAAC,QAAQ,EAAE;CAClC,CAAC,CAAA;AAIW,QAAA,wBAAwB,GAAG,OAAC,CAAC,MAAM,CAAC;IAC/C,QAAQ,EAAE,OAAC,CAAC,MAAM,EAAE;IACpB,MAAM,EAAE,OAAC,CAAC,UAAU,CAAC,MAAM,CAAC;IAC5B,OAAO,EAAE,qBAAa,CAAC,QAAQ,EAAE;CAClC,CAAC,CAAA;AAIW,QAAA,wBAAwB,GAAG,OAAC,CAAC,MAAM,CAAC;IAC/C,QAAQ,EAAE,OAAC,CAAC,MAAM,EAAE;IACpB,MAAM,EAAE,OAAC,CAAC,UAAU,CAAC,sBAAQ,CAAC;IAC9B,OAAO,EAAE,qBAAa,CAAC,QAAQ,EAAE;CAClC,CAAC,CAAA;AAIW,QAAA,kBAAkB,GAAG,OAAC,CAAC,KAAK,CAAC;IACxC,gCAAwB;IACxB,gCAAwB;CACzB,CAAC,CAAA;AA+EF,SAAgB,qBAAqB,CAEnC,IAAsB;IACtB,OAAO,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,QAAQ,CAAA;AACzC,CAAC;AAoED,SAAgB,0BAA0B,CACxC,MAAc;IAEd,8DAA8D;IAC9D,OAAO,MAAM,IAAI,IAAI,IAAI,QAAQ,IAAI,MAAM,IAAI,MAAM,CAAC,QAAQ,CAAC,KAAK,SAAS,CAAA;AAC/E,CAAC;AAED,SAAgB,0BAA0B,CACxC,MAAc;IAEd,8DAA8D;IAC9D,OAAO,MAAM,IAAI,IAAI,IAAI,QAAQ,IAAI,MAAM,IAAI,MAAM,CAAC,QAAQ,CAAC,KAAK,SAAS,CAAA;AAC/E,CAAC"}